linux-next: manual merge of the driver-core tree with the driver-core.current tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,

Today's linux-next merge of the driver-core tree got a conflict in
drivers/base/firmware_class.c between commit 875979368eb4 ("firmware
loader: fix use-after-free by double abort") from the driver-core.current
tree and commit fe304143b0c3 ("firmware: Avoid deadlock of usermodehelper
lock at shutdown") from the driver-core tree.

I fixed it up (more may be required - see below) and can carry the fix as
necessary (no action is required).

-- 
Cheers,
Stephen Rothwell                    sfr@xxxxxxxxxxxxxxxx

diff --cc drivers/base/firmware_class.c
index 01e2103,6ede229..0000000
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@@ -446,22 -452,11 +452,18 @@@ static struct firmware_priv *to_firmwar
  	return container_of(dev, struct firmware_priv, dev);
  }
  
- static void fw_load_abort(struct firmware_priv *fw_priv)
+ static void fw_load_abort(struct firmware_buf *buf)
  {
- 	struct firmware_buf *buf = fw_priv->buf;
- 
 +	/*
 +	 * There is a small window in which user can write to 'loading'
 +	 * between loading done and disappearance of 'loading'
 +	 */
 +	if (test_bit(FW_STATUS_DONE, &buf->status))
 +		return;
 +
+ 	list_del_init(&buf->pending_list);
  	set_bit(FW_STATUS_ABORT, &buf->status);
  	complete_all(&buf->completion);
- 
- 	/* avoid user action after loading abort */
- 	fw_priv->buf = NULL;
  }
  
  #define is_fw_load_aborted(buf)	\

Attachment: pgpSxdzJp3x2b.pgp
Description: PGP signature


[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux