datapath: Additional fixes for datapath device renaming.
authorBen Pfaff <blp@nicira.com>
Wed, 19 Aug 2009 19:51:27 +0000 (12:51 -0700)
committerBen Pfaff <blp@nicira.com>
Wed, 19 Aug 2009 20:44:05 +0000 (13:44 -0700)
commitb78a7336a3318a3c348004760bac3e0057b9e9d1
treec1ce6fe32fd0aeb6db50858601e55b0227cf2633
parentaf616f686b851c7e31ee48f16e7ae7df6f550553
datapath: Additional fixes for datapath device renaming.

Commit c874dc6d6b "secchan: Fix behavior when a network device is renamed."
fixed a crash in the datapath when network devices within a datapath were
renamed.  However, this missed the case where the device that was renamed
was a datapath's internal port: these devices have their br_port members
set to NULL, so we have to determine that they belong to a datapath another
way.  This commit does so.

This commit also changes the initialization order in dp_dev_create().
Otherwise, dp_device_event() will dereference null when it is called via
register_netdevice(), because the newly created device is a datapath device
but its members are not yet initialized.
datapath/dp_dev.c
datapath/dp_notify.c