multimedia/vlc causes a panic if media files are on msdosfs
Rainer Hurling
rhurlin at gwdg.de
Mon Nov 23 17:13:17 UTC 2009
On 22.11.2009 00:44 (UTC+1), Oliver Pinter wrote:
> can you run memtest?
hmmm. memtest reports no errors. And I do not think that this was a
memory specific task.
I observed the below described behaviour on to different machines, both
running 9.0-CURRENT. And there are no panics any more after system
update on november 21th.
> On 11/21/09, Rainer Hurling <rhurlin at gwdg.de> wrote:
>> On 20.11.2009 16:59 (UTC+1), Rainer Hurling wrote:
>>> On 20.11.2009 20:26 (UTC+1), Aditya Sarawgi wrote:
>>>> On Fri, Nov 20, 2009 at 01:01:23PM +0200, Kostik Belousov wrote:
>>>>> On Thu, Nov 19, 2009 at 02:30:33PM -0800, Doug Barton wrote:
>>>>>> Please see http://www.freebsd.org/cgi/query-pr.cgi?pr=140648 for more
>>>>>> information, including a trace.
>>>>>>
>>>>>> There is also some evidence that the same problem is triggered by
>>>>>> accessing files on an NTFS partition. The VLC folks have suggested
>>>>>> that the problem may be related to threading.
>>>>> This is because msdosfs and ntfs are not mpsafe, and it seems that
>>>>> VLC using recently added F_RDAHEAD/F_READAHEAD fcntls.
>>>>>
>>>>> Please try this.
>>>>>
>>>>> diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c
>>>>> index 434f54a..676de65 100644
>>>>> --- a/sys/kern/kern_descrip.c
>>>>> +++ b/sys/kern/kern_descrip.c
>>>>> @@ -718,14 +718,15 @@ kern_fcntl(struct thread *td, int fd, int cmd,
>>>>> intptr_t arg)
>>>>> do {
>>>>> new = old = fp->f_flag;
>>>>> new |= FRDAHEAD;
>>>>> - } while (atomic_cmpset_rel_int(&fp->f_flag, old, new) ==
>>>>> 0);
>>>>> + } while (!atomic_cmpset_rel_int(&fp->f_flag, old, new));
>>>>> readahead_vnlock_fail:
>>>>> VFS_UNLOCK_GIANT(vfslocked);
>>>>> + vfslocked = 0;
>>>>> } else {
>>>>> do {
>>>>> new = old = fp->f_flag;
>>>>> new &= ~FRDAHEAD;
>>>>> - } while (atomic_cmpset_rel_int(&fp->f_flag, old, new) ==
>>>>> 0);
>>>>> + } while (!atomic_cmpset_rel_int(&fp->f_flag, old, new));
>>>>> }
>>>>> fdrop(fp, td);
>>>>> break;
>>>> I have been getting panics with VLC on UFS filesytem too, Although the
>>>> frequency of panics on a UFS filesystem is pretty low as compared to
>>>> msdosfs and ntfs systems and they are very abrupt. I will try getting
>>>> a trace.
>>> I am observing panics also with newest vlc port on ufs2. System panics
>>> whenever playing .flv files.
>> With this patch even my panics went away :-)
>>
>> Thank you very much,
>> Rainer Hurling
>>
>> _______________________________________________
>> freebsd-current at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>>
More information about the freebsd-current
mailing list