lkml.org 
[lkml]   [2008]   [May]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [BUG ?] kmalloc() with GFP_KERNEL while holding spinlock ?
Date
Hi,

Li Zefan <lizf@cn.fujitsu.com> writes:

> I noticed the following issue in the code:
>
> in drivers/ata/libata-acpi.c:
>
> static void ata_acpi_handle_hotplug(struct ata_port *ap, struct ata_device *dev,
> u32 event)
> {
> ...
> spin_lock_irqsave(ap->lock, flags);
> ...
>
> if (dev) {
> if (dev->sdev)
> kobj = &dev->sdev->sdev_gendev.kobj;
> } else
> kobj = &ap->dev->kobj;
>
> if (kobj) {
> sprintf(event_string, "BAY_EVENT=%d", event);
> kobject_uevent_env(kobj, KOBJ_CHANGE, envp);
> }
>
> spin_unlock_irqrestore(ap->lock, flags);
> ...
> }
>
> and kobject_uevent_env() calls kzalloc(..., GFP_KERNEL);

Fixed by commit ae6c23c4e1ec9720b99e1e6850fe47c6c7fddbb3 "Fixups to ATA
ACPI hotplug" by Matthew Garrett.

Hannes


\
 
 \ /
  Last update: 2008-05-29 06:01    [W:0.044 / U:0.776 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site