# Merging devd on 10.2 upgrade



## FSG (Aug 23, 2015)

Hi.

I try to upgrade from 10.1 to 10.2
I use XFCE desktop, and the automatic update (using update manager) failed, so I went for the command line.
The process stop at 
	
	



```
<<The following file could not be merged automatically: /etc/devd.conf
Press Enter to edit this file in vi and resolve the conflicts
manually...>>
```
Opening the (rather long) file, I found an SVN style conflict:

```
<<<<<<< current version
# Sample ZFS problem reports handling.
        action "logger Unknown USB device: vendor $vendor product $product \
                bus $bus";
};

# Some PC-CARDs don't offer numerical manufacturer/product IDs, just
# show the CIS info there.
nomatch 20 {
        match "bus" "pccard[0-9]+";
        match "manufacturer" "0xffffffff";
        match "product" "0xffffffff";
        action "logger Unknown PCCARD device: CISproduct $cisproduct \
                CIS-vendor $cisvendor bus $bus";
nomatch 10 {
        match "bus" "pccard[0-9]+";
        action "logger Unknown PCCARD device: manufacturer $manufacturer \
                product $product CISproduct $cisproduct CIS-vendor \
                $cisvendor bus $bus";
nomatch 10 {
        match "bus" "cardbus[0-9]+";
        action "logger Unknown Cardbus device: device $device class $class \
                vendor $vendor bus $bus";
};
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "ACAD";
        action "/etc/rc.d/power_profile $notify";
};

# Notify all users before beginning emergency shutdown when we get
# a _CRT or _HOT thermal event and we're going to power down the system
# very soon.
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "Thermal";
        match "notify"          "0xcc";
        action "logger -p kern.emerg 'WARNING: system temperature too high, shut
ting down soon!'";
};

<<<<<<< current version
# Sample ZFS problem reports handling.
notify 10 {
   match "system"          "ZFS";
   match "type"            "zpool";
   action "logger -p kern.err 'ZFS: failed to load zpool $pool'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "vdev";
   action "logger -p kern.err 'ZFS: vdev failure, zpool=$pool type=$type'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "data";
   action "logger -p kern.warn 'ZFS: zpool I/O failure, zpool=$pool error=$zio_e
rr'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "io";
   action "logger -p kern.warn 'ZFS: vdev I/O failure, zpool=$pool path=$vdev_pa
th offset=$zio_offset size=$zio_size error=$zio_err'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "checksum";
   action "logger -p kern.warn 'ZFS: checksum mismatch, zpool=$pool path=$vdev_p
ath offset=$zio_offset size=$zio_size'";
};

=======
>>>>>>> 10.2-RELEASE
# User requested suspend, so perform preparation steps and then execute
# the actual suspend process.
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "Suspend";
        action "logger Unknown USB device: vendor $vendor product $product \
                bus $bus";
};

# Some PC-CARDs don't offer numerical manufacturer/product IDs, just
# show the CIS info there.
nomatch 20 {
        match "bus" "pccard[0-9]+";
        match "manufacturer" "0xffffffff";
        match "product" "0xffffffff";
        action "logger Unknown PCCARD device: CISproduct $cisproduct \
                CIS-vendor $cisvendor bus $bus";
nomatch 10 {
        match "bus" "pccard[0-9]+";
        action "logger Unknown PCCARD device: manufacturer $manufacturer \
                product $product CISproduct $cisproduct CIS-vendor \
                $cisvendor bus $bus";
nomatch 10 {
        match "bus" "cardbus[0-9]+";
        action "logger Unknown Cardbus device: device $device class $class \
                vendor $vendor bus $bus";
};

# Switch power profiles when the AC line state changes.
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "ACAD";
        action "/etc/rc.d/power_profile $notify";
};

# Notify all users before beginning emergency shutdown when we get
# a _CRT or _HOT thermal event and we're going to power down the system
# very soon.
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "Thermal";
        match "notify"          "0xcc";
        action "logger -p kern.emerg 'WARNING: system temperature too high, shut
ting down soon!'";
};

<<<<<<< current version
# Sample ZFS problem reports handling.
notify 10 {
   match "system"          "ZFS";
   match "type"            "zpool";
   action "logger -p kern.err 'ZFS: failed to load zpool $pool'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "vdev";
   action "logger -p kern.err 'ZFS: vdev failure, zpool=$pool type=$type'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "data";
   action "logger -p kern.warn 'ZFS: zpool I/O failure, zpool=$pool error=$zio_e
rr'";
};

notify 10 {
   match "system"          "ZFS";
   match "type"            "io";
   action "logger -p kern.warn 'ZFS: vdev I/O failure, zpool=$pool path=$vdev_pa
th offset=$zio_offset size=$zio_size error=$zio_err'";
};
```
The file end like this.
Not sure what I need to do with this... Just keep 10.2 section, and delete the current? Probably if it was that simple it would have been done automatically?

Please notice the what seems like an incoherence, there's 2 current version which seems to be included within each others, and only the 10.2 section end up correctly with the tag '======='

Help much appreciated, FreeBSD beginner here..


----------



## SirDice (Aug 24, 2015)

Remove everything between "<<<<< current version" and "==========" (including those two lines). Remove the ">>>>>>> 10.2-RELEASE" line. That should do it.


----------



## FSG (Aug 24, 2015)

Yes it does the trick.
Thanks.


----------



## SirDice (Aug 25, 2015)

You probably edited the file at some point in time. That throws off the automatic merging and you would need to do the merging by hand. It's usually as simple as this one, just look for those "<<<<<<", "======" and ">>>>>>>" lines and remove the bits you don't need.


----------

