Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Aug 2010 13:49:34 -0400
From:      Joe Marcus Clarke <marcus@freebsd.org>
To:        Kevin Oberman <oberman@es.net>
Cc:        gnome@freebsd.org, Andriy Gapon <avg@icyb.net.ua>
Subject:   Re: ports/149134: x11/gnome2 unable to unmount UFS file system
Message-ID:  <4C7A9DAE.4090702@freebsd.org>
In-Reply-To: <20100829165751.D33581CC3A@ptavv.es.net>
References:  <20100829165751.D33581CC3A@ptavv.es.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 8/29/10 12:57 PM, Kevin Oberman wrote:
>> Date: Sun, 29 Aug 2010 12:22:20 -0400
>> From: Joe Marcus Clarke <marcus@freebsd.org>
>> Sender: owner-freebsd-gnome@freebsd.org
>>
>> On 8/29/10 5:29 AM, Andriy Gapon wrote:
>>> on 29/08/2010 01:18 Joe Marcus Clarke said the following:
>>>> On 8/28/10 4:02 PM, Andriy Gapon wrote:
>>>>> on 28/08/2010 22:28 Joe Marcus Clarke said the following:
>>>>>>
>>>>>> Try http://www.marcuscom.com/downloads/patch-hald_hf-storage.c
>>>>>
>>>>> Just wondering aloud... Would the same strange things (mentioned in the comment
>>>>> in the patch) happen with labels for other filesystems like msdos/ cd9660/ ?
>>>>> Or it's something specific to UFS?
>>>>>
>>>>
>>>> Yeah, it could happen for other labels, I suppose.  The problem is that
>>>> the labels that appear dynamically depending oh whether or not a device
>>>> is mounted confuses hal.  If someone mounts /dev/cd0, unmounts it, then
>>>> sees /dev/cd9660/FREEBSD appear, that will cause hal to think a new
>>>> device was inserted.
>>>>
>>>> That said, I've only seen this happen with UFS.
>>>
>>>
>>> BTW, there seems to be an exclamation mark missing in the following part of the
>>> patch (hope you use monospaced font):
>>>
>>> +	  ! strcmp(fields[1], "PART")) &&
>>> +          ! (strncmp(fields[2], "ufsid/", strlen("ufsid/")) ||
>>> Here----------^
>>> +	  !  strncmp(fields[2], "ufs/", strlen("ufs/"))))
>>>
>>>
>>
>> Ugh, you're right.  When I added "ufs/" to the list, I broke the logic.
>>  It should be fixed now.
> 
> That explains some of the weirdness I've been seeing.
> 
> I'm really embarrassed as I found the error in the patch for 2.28 and
> fixed it (somewhat differently as I demorganized the logic and changed an
> || to an &&) and then THOUGHT I had confirmed that the patch to 2.30
> included my fix. Don't know how I missed it. :-( And, yes, I did post a
> note about the broken logic back on Feb. 23.
> 
> "I just actually looked at the patch above and I think the problem is
> that the second line needs to end with || and not &&. I just re-built
> hal with this and I will give it a shot after lunch."
> 
> Looks like I neglected to send a confirmation that it did work, though.
> Thanks for catching it, Andriy.
> 
> I can confirm that it is working, now. I suspect that the logic error
> was really the only problem and that the two lines you added to the
> patch are superfluous. I have not seen any indication that they cause
> any problems, but I have not done really rigorous testing, either.

No, the other patch can help as well as it will prevent unnecessary
churn when those other device nodes show up.  Thanks for testing.

Joe

> 
> Guess Santayana was right. I forgot the past and we just repeated it.


-- 
Joe Marcus Clarke
FreeBSD GNOME Team	::	gnome@FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C7A9DAE.4090702>