Bluetooth: Allocate struct inquiry_entry with GFP_KERNEL
authorMarcel Holtmann <marcel@holtmann.org>
Sun, 13 Jul 2014 15:22:25 +0000 (17:22 +0200)
committerJohan Hedberg <johan.hedberg@intel.com>
Sun, 13 Jul 2014 18:39:34 +0000 (21:39 +0300)
The allocation of inquiry cache entries is triggered as a result of
processing HCI events. Since the processing is done in the context
of a workqueue, there is no needed to allocate with GFP_ATOMIC in
that case. Switch it to GFP_KERNEL.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
net/bluetooth/hci_core.c

index 188bfd3..172041e 100644 (file)
@@ -2088,7 +2088,7 @@ u32 hci_inquiry_cache_update(struct hci_dev *hdev, struct inquiry_data *data,
        }
 
        /* Entry not in the cache. Add new one. */
-       ie = kzalloc(sizeof(struct inquiry_entry), GFP_ATOMIC);
+       ie = kzalloc(sizeof(struct inquiry_entry), GFP_KERNEL);
        if (!ie) {
                flags |= MGMT_DEV_FOUND_CONFIRM_NAME;
                goto done;