From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755132AbcESOwS (ORCPT ); Thu, 19 May 2016 10:52:18 -0400 Received: from mx2.suse.de ([195.135.220.15]:53081 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754391AbcESOwP (ORCPT ); Thu, 19 May 2016 10:52:15 -0400 Message-ID: <1463669326.14323.10.camel@suse.com> Subject: Re: [RFC PATCHv2] usb: USB Type-C Connector Class From: Oliver Neukum To: Heikki Krogerus Cc: Guenter Roeck , Andy Shevchenko , Rajaram R , Felipe Balbi , Mathias Nyman , Greg KH , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Date: Thu, 19 May 2016 16:48:46 +0200 In-Reply-To: <1463661894-22820-1-git-send-email-heikki.krogerus@linux.intel.com> References: <1463661894-22820-1-git-send-email-heikki.krogerus@linux.intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.11 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2016-05-19 at 15:44 +0300, Heikki Krogerus wrote: > + dev->class = &typec_class; > + dev->parent = parent; > + dev->type = &typec_partner_dev_type; > + dev_set_name(dev, "%s-partner", dev_name(&port->dev)); > + > + ret = device_register(dev); > + if (ret) { > + put_device(dev); > + return ret; > + } This looks like a race condition. > + ret = typec_register_altmodes(dev, partner->alt_modes); > + if (ret) { > + device_unregister(dev); > + return ret; > + } > + > + /* REVISIT: Creating symlink for the port device for now. */ > + ret = sysfs_create_link(&port->dev.kobj, &dev->kobj, "partner"); > + if (ret) > + dev_WARN(&port->dev, "failed to create link to %s (%d)\n", > + dev_name(dev), ret); The attributes should be present as soon as the device is announced. Regards Oliver