lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20131108120157.de84e99fedd328c7d8ca7a27@canb.auug.org.au>
Date:	Fri, 8 Nov 2013 12:01:57 +1100
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	Al Viro <viro@...IV.linux.org.uk>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Matthias Beyer <mail@...ermatthias.de>,
	Greg KH <greg@...ah.com>
Subject: linux-next: manual merge of the vfs tree with Linus' tree

Hi Al,

Today's linux-next merge of the vfs tree got a conflict in
drivers/usb/core/file.c between commit 469271f8c48f ("drivers: usb: core:
{file,hub,sysfs,usb}.c: Whitespace fixes") from Linus' tree and commit
e84f9e57b90c ("consolidate the reassignments of ->f_op in ->open()
instances") from the vfs tree.

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

-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc drivers/usb/core/file.c
index 3bdfbf88a0ae,fe0d8365411a..000000000000
--- a/drivers/usb/core/file.c
+++ b/drivers/usb/core/file.c
@@@ -27,29 -27,21 +27,21 @@@
  static const struct file_operations *usb_minors[MAX_USB_MINORS];
  static DECLARE_RWSEM(minor_rwsem);
  
 -static int usb_open(struct inode * inode, struct file * file)
 +static int usb_open(struct inode *inode, struct file *file)
  {
- 	int minor = iminor(inode);
- 	const struct file_operations *c;
  	int err = -ENODEV;
- 	const struct file_operations *old_fops, *new_fops = NULL;
+ 	const struct file_operations *new_fops;
  
  	down_read(&minor_rwsem);
- 	c = usb_minors[minor];
+ 	new_fops = fops_get(usb_minors[iminor(inode)]);
  
- 	if (!c || !(new_fops = fops_get(c)))
+ 	if (!new_fops)
  		goto done;
  
- 	old_fops = file->f_op;
- 	file->f_op = new_fops;
+ 	replace_fops(file, new_fops);
  	/* Curiouser and curiouser... NULL ->open() as "no device" ? */
  	if (file->f_op->open)
 -		err = file->f_op->open(inode,file);
 +		err = file->f_op->open(inode, file);
- 	if (err) {
- 		fops_put(file->f_op);
- 		file->f_op = fops_get(old_fops);
- 	}
- 	fops_put(old_fops);
   done:
  	up_read(&minor_rwsem);
  	return err;

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ