if (adapter->is_up == NETXEN_ADAPTER_UP_MAGIC) {
                netxen_free_hw_resources(adapter);
+               netxen_release_rx_buffers(adapter);
                netxen_free_sw_resources(adapter);
        }
 
                                  flags, netdev->name, adapter);
                if (err) {
                        printk(KERN_ERR "request_irq failed with: %d\n", err);
-                       goto err_out_free_hw;
+                       goto err_out_free_rxbuf;
                }
 
                adapter->is_up = NETXEN_ADAPTER_UP_MAGIC;
 
 err_out_free_irq:
        free_irq(adapter->irq, adapter);
-err_out_free_hw:
+err_out_free_rxbuf:
+       netxen_release_rx_buffers(adapter);
        netxen_free_hw_resources(adapter);
 err_out_free_sw:
        netxen_free_sw_resources(adapter);