Notice: the grml team is migrating from Mercurial to Git.
Please visit git.grml.org instead!
| author | Michael Prokop <mika@grml.org> |
| Sun Nov 26 11:04:54 2006 +0100 (2 years ago) | |
| changeset 7 | e325246a15fb |
| manifest | e325246a15fb |
| parent 6 | 29cd9a4c1bb6 |
| child 8 | fff78074a91a |
--- a/2.6.18/0000_README Sat Nov 25 22:28:17 2006 +0100+++ b/2.6.18/0000_README Sun Nov 26 11:04:54 2006 +0100@@ -43,13 +43,25 @@ Individual Patch Descriptions:Individual Patch Descriptions:---------------------------------------------------------------------------Patch: 1000_2.6.18.2.patch-From: http://kernel.org/pub/linux/kernel/v2.6/patch-2.6.18.2.bz2+Patch: 1000_2.6.18.3.patch+From: http://kernel.org/pub/linux/kernel/v2.6/patch-2.6.18.3.bz2Desc: The latest stable version of the Linux kernel+Patch: 2300_UCR-61S2B-unusual_dev-update.patch+From: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/+Desc: USB: Fix UCR-61S2B unusual_dev entry+Patch: 2400_net-netpoll.patchFrom: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/Desc: If netpoll uses up it's retries, it should drop the skb not leak memory.++Patch: 2410_bcm43xx-drain-tx-status-before-starting-irqs.patch+From: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/+Desc: bcm43xx stable fix++Patch: 2420_sctp-backports-[1-7].patch+From: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/+Desc: Backport various SCTP changesets from 2.6.19, recommended by Vlad Yasevich (closes: #397946)Patch: 2500_via-irq-quirk-revert.patchFrom: http://bugs.gentoo.org/138036@@ -107,11 +119,15 @@ From: http://svn.debian.org/wsvn/kerneFrom: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/Desc: scsi/BusLogic: Add MODULE_DEVICE_TABLE+Patch: 4130_linux-2.6-aic9400-adp94xx-updates.patch+From: http://developer.momonga-linux.org/viewcvs/trunk/pkgs/kernel/+Desc: support for the Adaptec aic94xx SAS/SATA driver+Patch: 4200_drm-i965.patchFrom: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/Desc: Add drm support for Intel i965G chipsets.-Patch: 4300_squashfs-3.0.patch+Patch: 4300_squashfs-3.1.patchFrom: http://squashfs.sourceforge.net/Desc: driver to support squashfs filesystems.@@ -167,6 +183,10 @@ From: http://svn.debian.org/wsvn/kerneFrom: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/Desc: f75375.c - driver for the Fintek F75375/SP and F75373 hardware monitoring features+Patch: 4445_ti.patch+From: http://svn.debian.org/wsvn/kernel/dists/trunk/linux-2.6/debian/patches/+Desc: support for TI ez430 development tool ID in ti_usb+Patch: 5000_grml-version.patchFrom: http://dufo.tugraz.at/~prokop/grml-kernel/Desc: adjust kernel version for the grml-system (add -grml)
--- a/2.6.18/4005_sky2-v1.9.patch Sat Nov 25 22:28:17 2006 +0100+++ b/2.6.18/4005_sky2-v1.9.patch Sun Nov 26 11:04:54 2006 +0100@@ -1,10 +1,6 @@ sky2 from 2.6.19-rc2, last included comm-sky2 from 2.6.19-rc2, last included commit:-6e532cfe49b6e961e1260642a44959b645e9ab54--Index: linux-2.6.18.1/drivers/net/sky2.c-===================================================================---- linux-2.6.18.1.orig/drivers/net/sky2.c-+++ linux-2.6.18.1/drivers/net/sky2.c+diff -urN -X dontdiff-mika linux-2.6.18.clean/drivers/net/sky2.c linux-2.6.18-sky2-v1.9/drivers/net/sky2.c+--- linux-2.6.18.clean/drivers/net/sky2.c 2006-09-20 05:42:06.000000000 +0200++++ linux-2.6.18-sky2-v1.9/drivers/net/sky2.c 2006-11-25 23:21:41.603221239 +0100@@ -50,19 +50,18 @@#include "sky2.h"@@ -37,7 +33,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c#define TX_WATCHDOG (5 * HZ)#define NAPI_WEIGHT 64#define PHY_RETRIES 1000-@@ -90,7 +88,7 @@ static int debug = -1; /* defaults abov+@@ -90,7 +88,7 @@module_param(debug, int, 0);MODULE_PARM_DESC(debug, "Debug level (0=none,...,16=all)");@@ -46,7 +42,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cmodule_param(copybreak, int, 0);MODULE_PARM_DESC(copybreak, "Receive copy threshold");-@@ -198,7 +196,6 @@ static u16 gm_phy_read(struct sky2_hw *h+@@ -190,7 +188,6 @@static void sky2_set_power_state(struct sky2_hw *hw, pci_power_t state){u16 power_control;@@ -54,7 +50,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cint vaux;pr_debug("sky2_set_power_state %d\n", state);-@@ -231,20 +228,9 @@ static void sky2_set_power_state(struct+@@ -223,20 +220,9 @@elsesky2_write8(hw, B2_Y2_CLK_GATE, 0);@@ -77,7 +73,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_pci_write32(hw, PCI_DEV_REG3, 0);reg1 = sky2_pci_read32(hw, PCI_DEV_REG4);reg1 &= P_ASPM_CONTROL_MSK;-@@ -256,15 +242,6 @@ static void sky2_set_power_state(struct+@@ -248,15 +234,6 @@case PCI_D3hot:case PCI_D3cold:@@ -93,7 +89,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (hw->chip_id == CHIP_ID_YUKON_XL && hw->chip_rev > 1)sky2_write8(hw, B2_Y2_CLK_GATE, 0);else-@@ -288,7 +265,7 @@ static void sky2_set_power_state(struct+@@ -280,7 +257,7 @@sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);}@@ -102,7 +98,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c{u16 reg;-@@ -310,7 +287,7 @@ static void sky2_phy_reset(struct sky2_h+@@ -302,7 +279,7 @@static void sky2_phy_init(struct sky2_hw *hw, unsigned port){struct sky2_port *sky2 = netdev_priv(hw->dev[port]);@@ -111,7 +107,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (sky2->autoneg == AUTONEG_ENABLE &&!(hw->chip_id == CHIP_ID_YUKON_XL || hw->chip_id == CHIP_ID_YUKON_EC_U)) {-@@ -329,7 +306,7 @@ static void sky2_phy_init(struct sky2_hw+@@ -321,7 +298,7 @@}ctrl = gm_phy_read(hw, port, PHY_MARV_PHY_CTRL);@@ -120,7 +116,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (hw->chip_id == CHIP_ID_YUKON_FE) {/* enable automatic crossover */ctrl |= PHY_M_PC_MDI_XMODE(PHY_M_PC_ENA_AUTO) >> 1;-@@ -346,25 +323,37 @@ static void sky2_phy_init(struct sky2_hw+@@ -338,25 +315,37 @@ctrl |= PHY_M_PC_DSC(2) | PHY_M_PC_DOWN_S_ENA;}}@@ -167,7 +163,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}ctrl = gm_phy_read(hw, port, PHY_MARV_CTRL);-@@ -379,9 +368,10 @@ static void sky2_phy_init(struct sky2_hw+@@ -371,9 +360,10 @@ctrl = 0;ct1000 = 0;adv = PHY_AN_CSMA;@@ -179,7 +175,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (sky2->advertising & ADVERTISED_1000baseT_Full)ct1000 |= PHY_M_1000C_AFD;if (sky2->advertising & ADVERTISED_1000baseT_Half)-@@ -394,8 +384,12 @@ static void sky2_phy_init(struct sky2_hw+@@ -386,8 +376,12 @@adv |= PHY_M_AN_10_FD;if (sky2->advertising & ADVERTISED_10baseT_Half)adv |= PHY_M_AN_10_HD;@@ -194,7 +190,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Set Flow-control capabilities */if (sky2->tx_pause && sky2->rx_pause)-@@ -411,21 +405,46 @@ static void sky2_phy_init(struct sky2_hw+@@ -403,21 +397,46 @@/* forced speed/duplex settings */ct1000 = PHY_M_1000C_MSE;@@ -243,7 +239,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (hw->chip_id != CHIP_ID_YUKON_FE)gm_phy_write(hw, port, PHY_MARV_1000T_CTRL, ct1000);-@@ -529,6 +548,7 @@ static void sky2_phy_init(struct sky2_hw+@@ -521,6 +540,7 @@gm_phy_write(hw, port, PHY_MARV_LED_OVER, ledover);}@@ -251,7 +247,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Enable phy interrupt on auto-negotiation complete (or link up) */if (sky2->autoneg == AUTONEG_ENABLE)gm_phy_write(hw, port, PHY_MARV_INT_MASK, PHY_M_IS_AN_COMPL);-@@ -536,6 +556,29 @@ static void sky2_phy_init(struct sky2_hw+@@ -528,6 +548,29 @@gm_phy_write(hw, port, PHY_MARV_INT_MASK, PHY_M_DEF_MSK);}@@ -281,7 +277,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Force a renegotiation */static void sky2_phy_reinit(struct sky2_port *sky2){-@@ -568,49 +611,11 @@ static void sky2_mac_init(struct sky2_hw+@@ -560,49 +603,11 @@gm_phy_read(hw, 1, PHY_MARV_INT_MASK) != 0);}@@ -334,16 +330,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cspin_lock_bh(&sky2->phy_lock);sky2_phy_init(hw, port);spin_unlock_bh(&sky2->phy_lock);-@@ -678,7 +683,7 @@ static void sky2_mac_init(struct sky2_hw- sky2_write16(hw, SK_REG(port, TX_GMF_CTRL_T), GMF_OPER_ON);-- if (hw->chip_id == CHIP_ID_YUKON_EC_U) {-- sky2_write8(hw, SK_REG(port, RX_GMF_LP_THR), 768/8);-+ sky2_write8(hw, SK_REG(port, RX_GMF_LP_THR), 512/8);- sky2_write8(hw, SK_REG(port, RX_GMF_UP_THR), 1024/8);- if (hw->dev[port]->mtu > ETH_DATA_LEN) {- /* set Tx GMAC FIFO Almost Empty Threshold */-@@ -762,15 +767,23 @@ static inline struct sky2_tx_le *get_tx_+@@ -754,15 +759,23 @@struct sky2_tx_le *le = sky2->tx_le + sky2->tx_prod;sky2->tx_prod = RING_NEXT(sky2->tx_prod, TX_RING_SIZE);@@ -369,7 +356,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}-@@ -778,6 +791,7 @@ static inline struct sky2_rx_le *sky2_ne+@@ -770,6 +783,7 @@{struct sky2_rx_le *le = sky2->rx_le + sky2->rx_put;sky2->rx_put = RING_NEXT(sky2->rx_put, RX_LE_SIZE);@@ -377,7 +364,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.creturn le;}-@@ -787,17 +801,16 @@ static inline u32 high32(dma_addr_t a)+@@ -779,17 +793,16 @@return sizeof(a) > sizeof(u32) ? (a >> 16) >> 16 : 0;}@@ -398,7 +385,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cle->opcode = OP_ADDR64 | HW_OWNER;sky2->rx_addr64 = high32(map + len);}-@@ -805,10 +818,52 @@ static void sky2_rx_add(struct sky2_port+@@ -797,10 +810,52 @@le = sky2_next_rx(sky2);le->addr = cpu_to_le32((u32) map);le->length = cpu_to_le16(len);@@ -453,7 +440,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Tell chip where to start receive checksum.* Actually has two checksums, but set both same to avoid possible byte-@@ -819,7 +874,7 @@ static void rx_set_checksum(struct sky2_+@@ -811,7 +866,7 @@struct sky2_rx_le *le;le = sky2_next_rx(sky2);@@ -462,7 +449,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cle->ctrl = 0;le->opcode = OP_TCPSTART | HW_OWNER;-@@ -869,12 +924,10 @@ static void sky2_rx_clean(struct sky2_po+@@ -861,12 +916,10 @@memset(sky2->rx_le, 0, RX_LE_BYTES);for (i = 0; i < sky2->rx_pending; i++) {@@ -477,7 +464,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.ckfree_skb(re->skb);re->skb = NULL;}-@@ -928,13 +981,13 @@ static void sky2_vlan_rx_register(struct+@@ -920,13 +973,13 @@struct sky2_hw *hw = sky2->hw;u16 port = sky2->port;@@ -493,7 +480,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}static void sky2_vlan_rx_kill_vid(struct net_device *dev, unsigned short vid)-@@ -943,48 +996,69 @@ static void sky2_vlan_rx_kill_vid(struct+@@ -935,48 +988,69 @@struct sky2_hw *hw = sky2->hw;u16 port = sky2->port;@@ -577,7 +564,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2->rx_put = sky2->rx_next = 0;sky2_qset(hw, rxq);-@@ -997,26 +1071,56 @@ static int sky2_rx_start(struct sky2_por+@@ -989,26 +1063,56 @@sky2_prefetch_init(hw, rxq, sky2->rx_le_map, RX_LE_SIZE - 1);rx_set_checksum(sky2);@@ -641,7 +628,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (thresh > 0x1ff)sky2_write32(hw, SK_REG(sky2->port, RX_GMF_CTRL_T), RX_TRUNC_OFF);else {-@@ -1024,7 +1128,6 @@ static int sky2_rx_start(struct sky2_por+@@ -1016,7 +1120,6 @@sky2_write32(hw, SK_REG(sky2->port, RX_GMF_CTRL_T), RX_TRUNC_ON);}@@ -649,7 +636,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Tell chip about available buffers */sky2_write16(hw, Y2_QADDR(rxq, PREF_UNIT_PUT_IDX), sky2->rx_put);return 0;-@@ -1083,11 +1186,13 @@ static int sky2_up(struct net_device *de+@@ -1075,11 +1178,13 @@goto err_out;memset(sky2->rx_le, 0, RX_LE_BYTES);@@ -664,7 +651,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_mac_init(hw, port);/* Determine available ram buffer space (in 4K blocks).-@@ -1111,7 +1216,8 @@ static int sky2_up(struct net_device *de+@@ -1103,7 +1208,8 @@sky2_qset(hw, txqaddr[port]);/* Set almost empty threshold */@@ -674,7 +661,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_write16(hw, Q_ADDR(txqaddr[port], Q_AL), 0x1a0);sky2_prefetch_init(hw, txqaddr[port], sky2->tx_le_map,-@@ -1182,8 +1288,6 @@ static unsigned tx_le_req(const struct s+@@ -1174,8 +1280,6 @@* A single packet can generate multiple list elements, and* the number of ring elements will probably be less than the number* of list elements used.@@ -683,7 +670,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c*/static int sky2_xmit_frame(struct sk_buff *skb, struct net_device *dev){-@@ -1192,33 +1296,13 @@ static int sky2_xmit_frame(struct sk_buf+@@ -1184,33 +1288,13 @@struct sky2_tx_le *le = NULL;struct tx_ring_info *re;unsigned i, len;@@ -719,7 +706,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (unlikely(netif_msg_tx_queued(sky2)))printk(KERN_DEBUG "%s: tx queued, slot %u, len %d\n",-@@ -1228,13 +1312,10 @@ static int sky2_xmit_frame(struct sk_buf+@@ -1220,13 +1304,10 @@mapping = pci_map_single(hw->pdev, skb->data, len, PCI_DMA_TODEVICE);addr64 = high32(mapping);@@ -734,7 +721,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cle->opcode = OP_ADDR64 | HW_OWNER;sky2->tx_addr64 = high32(mapping + len);}-@@ -1242,25 +1323,16 @@ static int sky2_xmit_frame(struct sk_buf+@@ -1234,25 +1315,16 @@/* Check for TCP Segmentation Offload */mss = skb_shinfo(skb)->gso_size;if (mss != 0) {@@ -766,7 +753,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}ctrl = 0;-@@ -1269,9 +1341,8 @@ static int sky2_xmit_frame(struct sk_buf+@@ -1261,9 +1333,8 @@if (sky2->vlgrp && vlan_tx_tag_present(skb)) {if (!le) {le = get_tx_le(sky2);@@ -777,7 +764,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c} elsele->opcode |= OP_VLAN;le->length = cpu_to_be16(vlan_tx_tag_get(skb));-@@ -1281,72 +1352,71 @@ static int sky2_xmit_frame(struct sk_buf+@@ -1273,72 +1344,71 @@/* Handle TCP checksum offload */if (skb->ip_summed == CHECKSUM_HW) {@@ -876,7 +863,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cdev->trans_start = jiffies;return NETDEV_TX_OK;}-@@ -1355,59 +1425,59 @@ out_unlock:+@@ -1347,59 +1417,59 @@* Free ring elements from starting at tx_cons until "done"** NB: the hardware will tell us about partial completion of multi-part@@ -935,16 +922,16 @@ Index: linux-2.6.18.1/drivers/net/sky2.c+ pci_unmap_len(re, maplen),PCI_DMA_TODEVICE);+ break;-+ }-++ }++- dev_kfree_skb(skb);+ if (le->ctrl & EOP) {+ if (unlikely(netif_msg_tx_done(sky2)))+ printk(KERN_DEBUG "%s: tx done %u\n",+ dev->name, idx);+ dev_kfree_skb(re->skb);- }--- dev_kfree_skb(skb);++ }+++ le->opcode = 0; /* paranoia */}@@ -968,16 +955,21 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}/* Network shutdown */-@@ -1429,7 +1499,7 @@ static int sky2_down(struct net_device *+@@ -1421,7 +1491,12 @@/* Stop more packets from being queued */netif_stop_queue(dev);- sky2_phy_reset(hw, port);++ /* Disable port IRQ */++ imask = sky2_read32(hw, B0_IMSK);++ imask &= ~portirq_msk[port];++ sky2_write32(hw, B0_IMSK, imask);+++ sky2_gmac_reset(hw, port);/* Stop transmitter */sky2_write32(hw, Q_ADDR(txqaddr[port], Q_CSR), BMU_STOP);-@@ -1438,6 +1508,13 @@ static int sky2_down(struct net_device *+@@ -1430,6 +1505,13 @@sky2_write32(hw, RB_ADDR(txqaddr[port], RB_CTRL),RB_RST_SET | RB_DIS_OP_MD);@@ -991,14 +983,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cctrl = gma_read16(hw, port, GM_GP_CTRL);ctrl &= ~(GM_GPCR_TX_ENA | GM_GPCR_RX_ENA);gma_write16(hw, port, GM_GP_CTRL, ctrl);-@@ -1477,12 +1554,14 @@ static int sky2_down(struct net_device *- imask &= ~portirq_msk[port];- sky2_write32(hw, B0_IMSK, imask);--+ sky2_phy_power(hw, port, 0);-+- /* turn off LED's */- sky2_write16(hw, B0_Y2LED, LED_STAT_OFF);+@@ -1474,7 +1558,7 @@synchronize_irq(hw->pdev->irq);@@ -1007,7 +992,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_rx_clean(sky2);pci_free_consistent(hw->pdev, RX_LE_BYTES,-@@ -1505,7 +1584,7 @@ static int sky2_down(struct net_device *+@@ -1497,7 +1581,7 @@static u16 sky2_phy_speed(const struct sky2_hw *hw, u16 aux){@@ -1016,7 +1001,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.creturn SPEED_1000;if (hw->chip_id == CHIP_ID_YUKON_FE)-@@ -1527,40 +1606,10 @@ static void sky2_link_up(struct sky2_por+@@ -1519,40 +1603,10 @@unsigned port = sky2->port;u16 reg;@@ -1058,7 +1043,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cgm_phy_write(hw, port, PHY_MARV_INT_MASK, PHY_M_DEF_MSK);-@@ -1614,7 +1663,6 @@ static void sky2_link_down(struct sky2_p+@@ -1606,7 +1660,6 @@reg = gma_read16(hw, port, GM_GP_CTRL);reg &= ~(GM_GPCR_RX_ENA | GM_GPCR_TX_ENA);gma_write16(hw, port, GM_GP_CTRL, reg);@@ -1066,7 +1051,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (sky2->rx_pause && !sky2->tx_pause) {/* restore Asymmetric Pause bit */-@@ -1631,6 +1679,7 @@ static void sky2_link_down(struct sky2_p+@@ -1623,6 +1676,7 @@if (netif_msg_link(sky2))printk(KERN_INFO PFX "%s: Link is down.\n", sky2->netdev->name);@@ -1074,7 +1059,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_phy_init(hw, port);}-@@ -1647,22 +1696,33 @@ static int sky2_autoneg_done(struct sky2+@@ -1639,22 +1693,33 @@return -1;}@@ -1117,7 +1102,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Pause bits are offset (9..8) */if (hw->chip_id == CHIP_ID_YUKON_XL || hw->chip_id == CHIP_ID_YUKON_EC_U)-@@ -1671,8 +1731,11 @@ static int sky2_autoneg_done(struct sky2+@@ -1663,8 +1728,11 @@sky2->rx_pause = (aux & PHY_M_PS_RX_P_EN) != 0;sky2->tx_pause = (aux & PHY_M_PS_TX_P_EN) != 0;@@ -1131,7 +1116,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_write8(hw, SK_REG(port, GMAC_CTRL), GMC_PAUSE_ON);elsesky2_write8(hw, SK_REG(port, GMAC_CTRL), GMC_PAUSE_OFF);-@@ -1698,7 +1761,7 @@ static void sky2_phy_intr(struct sky2_hw+@@ -1690,7 +1758,7 @@printk(KERN_INFO PFX "%s: phy interrupt status 0x%x 0x%x\n",sky2->netdev->name, istatus, phystat);@@ -1140,7 +1125,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (sky2_autoneg_done(sky2, phystat) == 0)sky2_link_up(sky2);goto out;-@@ -1750,31 +1813,22 @@ static void sky2_tx_timeout(struct net_d+@@ -1742,31 +1810,22 @@} else if (report != sky2->tx_cons) {printk(KERN_INFO PFX "status report lost?\n");@@ -1175,7 +1160,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cstatic int sky2_change_mtu(struct net_device *dev, int new_mtu){struct sky2_port *sky2 = netdev_priv(dev);-@@ -1809,7 +1863,7 @@ static int sky2_change_mtu(struct net_de+@@ -1801,7 +1860,7 @@sky2_rx_clean(sky2);dev->mtu = new_mtu;@@ -1184,7 +1169,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cmode = DATA_BLIND_VAL(DATA_BLIND_DEF) |GM_SMOD_VLAN_ENA | IPG_DATA_VAL(IPG_DATA_DEF);-@@ -1835,20 +1889,105 @@ static int sky2_change_mtu(struct net_de+@@ -1827,20 +1886,105 @@return err;}@@ -1294,7 +1279,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2->rx_next = (sky2->rx_next + 1) % sky2->rx_pending;prefetch(sky2->rx_ring + sky2->rx_next);-@@ -1859,43 +1998,15 @@ static struct sk_buff *sky2_receive(stru+@@ -1851,43 +1995,15 @@if (!(status & GMR_FS_RX_OK))goto resubmit;@@ -1344,7 +1329,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.creturn skb;-@@ -1908,7 +2019,7 @@ error:+@@ -1900,7 +2016,7 @@if (netif_msg_rx_err(sky2) && net_ratelimit())printk(KERN_INFO PFX "%s: rx error, status 0x%x length %d\n",@@ -1353,7 +1338,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (status & (GMR_FS_LONG_ERR | GMR_FS_UN_SIZE))sky2->net_stats.rx_length_errors++;-@@ -1928,18 +2039,12 @@ static inline void sky2_tx_done(struct n+@@ -1920,18 +2036,12 @@struct sky2_port *sky2 = netdev_priv(dev);if (netif_running(dev)) {@@ -1374,7 +1359,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Process status response ring */static int sky2_status_intr(struct sky2_hw *hw, int to_do){-@@ -1963,16 +2068,15 @@ static int sky2_status_intr(struct sky2_+@@ -1955,16 +2065,15 @@dev = hw->dev[le->link];sky2 = netdev_priv(dev);@@ -1394,7 +1379,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cskb->protocol = eth_type_trans(skb, dev);dev->last_rx = jiffies;-@@ -2009,7 +2113,7 @@ static int sky2_status_intr(struct sky2_+@@ -2001,7 +2110,7 @@case OP_RXCHKS:skb = sky2->rx_ring[sky2->rx_next].skb;skb->ip_summed = CHECKSUM_HW;@@ -1403,7 +1388,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cbreak;case OP_TXINDEXLE:-@@ -2030,6 +2134,9 @@ static int sky2_status_intr(struct sky2_+@@ -2022,6 +2131,9 @@}}@@ -1413,7 +1398,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cexit_loop:if (buf_write[0]) {sky2 = netdev_priv(hw->dev[0]);-@@ -2105,7 +2212,7 @@ static void sky2_hw_intr(struct sky2_hw+@@ -2097,7 +2209,7 @@sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);sky2_pci_write16(hw, PCI_STATUS,@@ -1422,7 +1407,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);}-@@ -2239,19 +2346,16 @@ static int sky2_poll(struct net_device *+@@ -2231,19 +2343,16 @@sky2_descriptor_error(hw, 1, "transmit", Y2_IS_CHK_TXA2);work_done = sky2_status_intr(hw, work_limit);@@ -1450,7 +1435,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}static irqreturn_t sky2_intr(int irq, void *dev_id, struct pt_regs *regs)-@@ -2311,7 +2415,7 @@ static inline u32 sky2_clk2us(const stru+@@ -2303,7 +2412,7 @@static int sky2_reset(struct sky2_hw *hw){u16 status;@@ -1459,7 +1444,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cint i;sky2_write8(hw, B0_CTST, CS_RST_CLR);-@@ -2357,9 +2461,7 @@ static int sky2_reset(struct sky2_hw *hw+@@ -2349,9 +2458,7 @@sky2_pci_write32(hw, PEX_UNC_ERR_STAT, 0xffffffffUL);@@ -1470,7 +1455,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.chw->ports = 1;t8 = sky2_read8(hw, B2_Y2_HW_RES);if ((t8 & CFG_DUAL_MAC_MSK) == CFG_DUAL_MAC_MSK) {-@@ -2417,7 +2519,7 @@ static int sky2_reset(struct sky2_hw *hw+@@ -2409,7 +2516,7 @@sky2_write32(hw, B0_HWE_IMSK, Y2_HWE_ALL_MASK);for (i = 0; i < hw->ports; i++)@@ -1479,7 +1464,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cmemset(hw->st_le, 0, STATUS_LE_BYTES);hw->st_idx = 0;-@@ -2456,21 +2558,22 @@ static int sky2_reset(struct sky2_hw *hw+@@ -2448,21 +2555,22 @@static u32 sky2_supported_modes(const struct sky2_hw *hw){@@ -1513,7 +1498,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}static int sky2_get_settings(struct net_device *dev, struct ethtool_cmd *ecmd)-@@ -2481,7 +2584,7 @@ static int sky2_get_settings(struct net_+@@ -2473,7 +2581,7 @@ecmd->transceiver = XCVR_INTERNAL;ecmd->supported = sky2_supported_modes(hw);ecmd->phy_address = PHY_ADDR_MARV;@@ -1522,7 +1507,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cecmd->supported = SUPPORTED_10baseT_Half| SUPPORTED_10baseT_Full| SUPPORTED_100baseT_Half-@@ -2490,12 +2593,14 @@ static int sky2_get_settings(struct net_+@@ -2482,12 +2590,14 @@| SUPPORTED_1000baseT_Full| SUPPORTED_Autoneg | SUPPORTED_TP;ecmd->port = PORT_TP;@@ -1539,7 +1524,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cecmd->duplex = sky2->duplex;return 0;}-@@ -2894,7 +2999,6 @@ static int sky2_set_pauseparam(struct ne+@@ -2886,7 +2996,6 @@struct ethtool_pauseparam *ecmd){struct sky2_port *sky2 = netdev_priv(dev);@@ -1547,7 +1532,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2->autoneg = ecmd->autoneg;sky2->tx_pause = ecmd->tx_pause != 0;-@@ -2902,7 +3006,7 @@ static int sky2_set_pauseparam(struct ne+@@ -2894,7 +3003,7 @@sky2_phy_reinit(sky2);@@ -1556,7 +1541,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c}static int sky2_get_coalesce(struct net_device *dev,-@@ -3128,7 +3232,6 @@ static __devinit struct net_device *sky2+@@ -3120,7 +3229,6 @@sky2->hw = hw;sky2->msg_enable = netif_msg_init(debug, default_msg);@@ -1564,7 +1549,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.c/* Auto speed and flow control */sky2->autoneg = AUTONEG_ENABLE;sky2->tx_pause = 1;-@@ -3141,13 +3244,11 @@ static __devinit struct net_device *sky2+@@ -3133,13 +3241,11 @@spin_lock_init(&sky2->phy_lock);sky2->tx_pending = TX_DEF_PENDING;sky2->rx_pending = RX_DEF_PENDING;@@ -1578,7 +1563,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cif (hw->chip_id != CHIP_ID_YUKON_EC_U)dev->features |= NETIF_F_TSO;if (highmem)-@@ -3208,6 +3309,8 @@ static int __devinit sky2_test_msi(struc+@@ -3200,6 +3306,8 @@struct pci_dev *pdev = hw->pdev;int err;@@ -1587,19 +1572,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);err = request_irq(pdev->irq, sky2_test_intr, IRQF_SHARED, DRV_NAME, hw);-@@ -3217,10 +3320,8 @@ static int __devinit sky2_test_msi(struc- return err;- }--- init_waitqueue_head (&hw->msi_wait);--- sky2_write8(hw, B0_CTST, CS_ST_SW_IRQ);-- wmb();-+ sky2_read8(hw, B0_CTST);-- wait_event_timeout(hw->msi_wait, hw->msi_detected, HZ/10);--@@ -3312,12 +3413,13 @@ static int __devinit sky2_probe(struct p+@@ -3304,12 +3412,13 @@hw->pm_cap = pm_cap;#ifdef __BIG_ENDIAN@@ -1616,7 +1589,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_pci_write32(hw, PCI_DEV_REG2, reg);}#endif-@@ -3341,6 +3443,14 @@ static int __devinit sky2_probe(struct p+@@ -3333,6 +3442,14 @@if (!dev)goto err_out_free_pci;@@ -1631,7 +1604,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.cerr = register_netdev(dev);if (err) {printk(KERN_ERR PFX "%s: cannot register net device\n",-@@ -3348,6 +3458,14 @@ static int __devinit sky2_probe(struct p+@@ -3340,6 +3457,14 @@goto err_out_free_netdev;}@@ -1646,7 +1619,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csky2_show_addr(dev);if (hw->ports > 1 && (dev1 = sky2_init_netdev(hw, 1, using_dac))) {-@@ -3362,23 +3480,6 @@ static int __devinit sky2_probe(struct p+@@ -3354,23 +3479,6 @@}}@@ -1670,7 +1643,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.csetup_timer(&hw->idle_timer, sky2_idle, (unsigned long) hw);sky2_idle_start(hw);-@@ -3388,10 +3489,6 @@ static int __devinit sky2_probe(struct p+@@ -3380,10 +3488,6 @@err_out_unregister:pci_disable_msi(pdev);@@ -1681,10 +1654,9 @@ Index: linux-2.6.18.1/drivers/net/sky2.cunregister_netdev(dev);err_out_free_netdev:free_netdev(dev);-Index: linux-2.6.18.1/drivers/net/sky2.h-===================================================================---- linux-2.6.18.1.orig/drivers/net/sky2.h-+++ linux-2.6.18.1/drivers/net/sky2.h+diff -urN -X dontdiff-mika linux-2.6.18.clean/drivers/net/sky2.h linux-2.6.18-sky2-v1.9/drivers/net/sky2.h+--- linux-2.6.18.clean/drivers/net/sky2.h 2006-09-20 05:42:06.000000000 +0200++++ linux-2.6.18-sky2-v1.9/drivers/net/sky2.h 2006-11-25 23:21:41.607221409 +0100@@ -4,6 +4,8 @@#ifndef _SKY2_H#define _SKY2_H@@ -1694,7 +1666,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.h/* PCI config registers */enum {PCI_DEV_REG1 = 0x40,-@@ -1318,6 +1320,14 @@ enum {+@@ -1318,6 +1320,14 @@};/* for Yukon-2 Gigabit Ethernet PHY (88E1112 only) */@@ -1709,7 +1681,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.h/***** PHY_MARV_PHY_CTRL (page 2) 16 bit r/w MAC Specific Ctrl *****/enum {PHY_M_MAC_MD_MSK = 7<<7, /* Bit 9.. 7: Mode Select Mask */-@@ -1748,7 +1758,6 @@ enum {+@@ -1748,7 +1758,6 @@INIT_SUM= 1<<3,LOCK_SUM= 1<<4,INS_VLAN= 1<<5,@@ -1717,7 +1689,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.hEOP = 1<<7,};-@@ -1784,21 +1793,9 @@ enum {+@@ -1784,21 +1793,9 @@OP_TXINDEXLE = 0x68,};@@ -1741,7 +1713,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.h__le16 length; /* also vlan tag or checksum start */u8 ctrl;u8 opcode;-@@ -1821,12 +1818,14 @@ struct sky2_status_le {+@@ -1821,12 +1818,14 @@struct tx_ring_info {struct sk_buff *skb;DECLARE_PCI_UNMAP_ADDR(mapaddr);@@ -1759,7 +1731,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.h};struct sky2_port {-@@ -1836,7 +1835,6 @@ struct sky2_port {+@@ -1836,7 +1835,6 @@u32 msg_enable;spinlock_t phy_lock;@@ -1767,7 +1739,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.hstruct tx_ring_info *tx_ring;struct sky2_tx_le *tx_le;u16 tx_cons; /* next le to check */-@@ -1844,14 +1842,17 @@ struct sky2_port {+@@ -1844,14 +1842,17 @@u32 tx_addr64;u16 tx_pending;u16 tx_last_mss;@@ -1787,7 +1759,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.h#ifdef SKY2_VLAN_TAG_USEDu16 rx_tag;struct vlan_group *vlgrp;-@@ -1879,7 +1880,7 @@ struct sky2_hw {+@@ -1879,7 +1880,7 @@int pm_cap;u8 chip_id;u8 chip_rev;@@ -1796,7 +1768,7 @@ Index: linux-2.6.18.1/drivers/net/sky2.hu8 ports;struct sky2_status_le *st_le;-@@ -1891,6 +1892,11 @@ struct sky2_hw {+@@ -1891,6 +1892,11 @@wait_queue_head_t msi_wait;};
--- a/2.6.18/4310_fs-asfs.patch Sat Nov 25 22:28:17 2006 +0100+++ b/2.6.18/4310_fs-asfs.patch Sun Nov 26 11:04:54 2006 +0100@@ -6,9 +6,9 @@## DP: Upstream status: submitted but no reply. Submitted again on 2005.03.22.## DP: Reference: http://home.elka.pw.edu.pl/~mszyprow/programy/asfs/-diff -urN linux-2.6.18/Documentation/filesystems/00-INDEX linux-2.6.18-asfs-1.0b11/Documentation/filesystems/00-INDEX---- linux-2.6.18/Documentation/filesystems/00-INDEX 2006-09-22 22:47:41.000000000 +0200-+++ linux-2.6.18-asfs-1.0b11/Documentation/filesystems/00-INDEX 2006-09-22 22:53:21.000000000 +0200+diff -Nur linux-2.6.19-rc6/Documentation/filesystems/00-INDEX linux-2.6.19-rc6/Documentation/filesystems/00-INDEX+--- linux-2.6.19-rc6/Documentation/filesystems/00-INDEX 2006-11-16 05:03:40.000000000 +0100++++ linux-2.6.19-rc6/Documentation/filesystems/00-INDEX 2006-11-24 18:19:03.000000000 +0100@@ -10,6 +10,8 @@- info and examples for the distributed AFS (Andrew File System) fs.affs.txt@@ -18,9 +18,9 @@ diff -urN linux-2.6.18/Documentation/filautomount-support.txt- information about filesystem automount support.befs.txt-diff -urN linux-2.6.18/Documentation/filesystems/asfs.txt linux-2.6.18-asfs-1.0b11/Documentation/filesystems/asfs.txt---- linux-2.6.18/Documentation/filesystems/asfs.txt 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/Documentation/filesystems/asfs.txt 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/Documentation/filesystems/asfs.txt linux-2.6.19-rc6/Documentation/filesystems/asfs.txt+--- linux-2.6.19-rc6/Documentation/filesystems/asfs.txt 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/Documentation/filesystems/asfs.txt 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,161 @@++Amiga SmartFileSystem, Linux implementation@@ -183,9 +183,209 @@ diff -urN linux-2.6.18/Documentation/fil+The ASFS driver is realased under the terms of of the GNU General+Public License. See source code for more details.+-diff -urN linux-2.6.18/fs/asfs/adminspace.c linux-2.6.18-asfs-1.0b11/fs/asfs/adminspace.c---- linux-2.6.18/fs/asfs/adminspace.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/adminspace.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/Kconfig linux-2.6.19-rc6/fs/Kconfig+--- linux-2.6.19-rc6/fs/Kconfig 2006-11-16 05:03:40.000000000 +0100++++ linux-2.6.19-rc6/fs/Kconfig 2006-11-24 18:19:03.000000000 +0100+@@ -1111,6 +1111,53 @@+ To compile this file system support as a module, choose M here: the+ module will be called ecryptfs.+++config ASFS_FS++ tristate "Amiga SFS file system support (EXPERIMENTAL)"++ select NLS++ depends on EXPERIMENTAL++ help++++ The Amiga Smart FileSystem (SFS) is the file system used on hard++ disks by Amiga(tm) and MorphOS(tm) systems. Say Y if you want++ to be able to read files from an Amiga SFS partition on your hard++ drive.++++ For more information read <file:Documentation/filesystems/asfs.txt>++++ To compile this file system support as a module, choose M here: the++ module will be called asfs.++++ If unsure, say N.++++config ASFS_DEFAULT_CODEPAGE++ string "Default codepage for SFS"++ depends on ASFS_FS++ default ""++ help++ This option should be set to the codepage of your SFS filesystems.++ It can be overridden with the 'codepage' mount option. Leave it blank++ or enter 'none' to disable filename converting.++++ Use full codepage name (for example 'cp1251' instead of '1251') here,++ this allows to specify any character set, not only numbered one (like++ 'iso8859-2').++++ If unsure, leave it blank.++++config ASFS_RW++ bool "Amiga SFS write support (DANGEROUS)"++ depends on ASFS_FS++ help++++ If you say Y here, you will be able to write to ASFS file++ systems as well as read from them. The read-write support in ASFS++ is in beta stage. This means that useing it to write files to SFS++ partitions is DANGEROUS and COULD corrupt the filesystem.++++ For more information read <file:Documentation/filesystems/asfs.txt>++++ If unsure, say N.+++ config HFS_FS+ tristate "Apple Macintosh file system support (EXPERIMENTAL)"+ depends on BLOCK && EXPERIMENTAL+diff -Nur linux-2.6.19-rc6/fs/Makefile linux-2.6.19-rc6/fs/Makefile+--- linux-2.6.19-rc6/fs/Makefile 2006-11-16 05:03:40.000000000 +0100++++ linux-2.6.19-rc6/fs/Makefile 2006-11-24 18:19:03.000000000 +0100+@@ -96,6 +96,7 @@+ obj-$(CONFIG_JFFS_FS) += jffs/+ obj-$(CONFIG_JFFS2_FS) += jffs2/+ obj-$(CONFIG_AFFS_FS) += affs/++obj-$(CONFIG_ASFS_FS) += asfs/+ obj-$(CONFIG_ROMFS_FS) += romfs/+ obj-$(CONFIG_QNX4FS_FS) += qnx4/+ obj-$(CONFIG_AUTOFS_FS) += autofs/+diff -Nur linux-2.6.19-rc6/fs/asfs/Changes linux-2.6.19-rc6/fs/asfs/Changes+--- linux-2.6.19-rc6/fs/asfs/Changes 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/Changes 2006-11-24 18:19:03.000000000 +0100+@@ -0,0 +1,116 @@++++Amiga Smart File System, Linux implementation++++Please direct bug reports to: marek@amiga.pl++++History:++++v1.0beta11 (22.09.2006)++- adapted to 2.6.18 kernel VFS changes++- made some functions static to reduce overhead in kernel namespace++++v1.0beta10 (13.06.2005)++- fixed ugly bug introduced in beta9 that caused kernel crash on x86++ (thanks to Emiliano for reporting it!)++++v1.0beta9 (17.03.2005)++- added NLS support (thanks to Pavel Fedin!)++++v1.0beta8 (07.01.2005)++- adapted to 2.6.10 kernel VFS changes++- added workaround for buggy Mandrake kernel headers++++v1.0beta7 (25.06.2004)++- small changes in documentation++- code clean up: bitfuncs.c, super.c, inode.c, *.h, Makefile, added++ asfs_ prefix to function names, made some functions static++ (big thanks to Christoph Hellwig for advice!)++- fixed minor bugs (inode leak in super.c, not-realesed buffer during++ object renaming in inode.c)++- now files/dirs are created with global ownership/permission bits++++v1.0beta6 (04.06.2004)++- fixed: ASFS_SB(sb)->flags was always zero in 2.6.x code++++v1.0beta5 (07.05.2004)++- finally fixed a problem with file size attrib. not being written++ to disk++- fixed some problems with GCC 3.x and debug enabled++++v1.0beta4 (12.04.2004)++- removed dummy asfs_notify_change (this fixes major bug introduced++ in 1.0beta3 - file size wasn't written to disk) until it will++ be implemented completely++++v1.0beta3 (22.03.2004) - still beta++- updated for 2.6.x kernels VFS changes++- code clean-up++- added dummy asfs_notify_change (chmod now returns no errors)++- added symlinks write support++- fixed: ASFS_SB(sb)->flags was always zero++++v1.0beta2 (11.01.2004) - special version for Pegasos][ kernel++- separated read and write functions, can be compiled also++ as read-only fs++++v1.0beta1 (02.12.2003) - first public beta with write support++- added dentry hashing/comparing routines++- code clean-up++++v1.0aplha4 (30.11.2003) - preparing for first public beta++- fixed some problems with renaming/moving files++- fixed two major bugs, which didn't occur when fs was mounted++ on loopback device (newly allocated blocks were not written to++ disk and state bits were not set correctly on newly mapped file++ blocks)++- fixed many small bugs in io code (some buffers were not freed)++- added/modified sb locks in asfs_lookup and asfs_getblock++- fixed serious bug in file block allocation routines++++v1.0aplha3 (23.11.2003)++- added (hopefully) all byteswap code, should now work again on++ little-endian systems (also with write support!)++- updated documentation++++v1.0alpha2 (13.11.2003)++- now alocates file blocks in chunks during one request++- fixed some dead-locks, other fixes++++v1.0alpha (02.11.2003) - first working version with full write support++- too much to list it here ;)++++... (working on write support)++++v0.7 (12.10.2003) - internal realase++- added asfs_breadcheck, modified asfs_get_node, asfs_search_BTree,++ no more from_be32/16 macros, other...++- code splitted into several files++++v0.6 (04.09.2003) - final read-only version++- added support for HashTables, directory scaning should be++ MUCH faster now++- added checking of block IDs before reading any data from block++++v0.5 (19.07.2003)++- added simple but effective extent cache - real speed-up++ in reading large files++- added read support for symlinks - based on AFFS symlinks++++v0.4 (10.07.2003)++- third code clean-up (thanks to Roman Zippel for advice)++- now uses generic readpage and readinode routines++++v0.3beta (17.06.2003)++- second code clean-up++++v0.2beta2 (15.06.2003)++- fixed yet another stupid bug - driver can't read root block on little-endian systems++v0.2beta (15.06.2003)++- fixed stupid bug - now files have 'file' flag (S_IFREG) set...++- added mount options to set uid, gid and mode of files and dirs++- made hidden files & dirs really hidden (= not listed in directories)++- code clean-up++++v0.1beta (11.06.2003)++- after many kernel crashes, finally got it!++- first working read-only filesystem driver+diff -Nur linux-2.6.19-rc6/fs/asfs/Makefile linux-2.6.19-rc6/fs/asfs/Makefile+--- linux-2.6.19-rc6/fs/asfs/Makefile 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/Makefile 2006-11-24 18:19:03.000000000 +0100+@@ -0,0 +1,8 @@++#++# Makefile for the linux asfs filesystem routines.++#++++obj-$(CONFIG_ASFS_FS) += asfs.o++++asfs-y += dir.o extents.o file.o inode.o namei.o nodes.o objects.o super.o symlink.o++asfs-$(CONFIG_ASFS_RW) += adminspace.o bitfuncs.o+diff -Nur linux-2.6.19-rc6/fs/asfs/adminspace.c linux-2.6.19-rc6/fs/asfs/adminspace.c+--- linux-2.6.19-rc6/fs/asfs/adminspace.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/adminspace.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,446 @@+/*+ *@@ -633,9 +833,9 @@ diff -urN linux-2.6.18/fs/asfs/adminspac+}++#endif-diff -urN linux-2.6.18/fs/asfs/asfs_fs.h linux-2.6.18-asfs-1.0b11/fs/asfs/asfs_fs.h---- linux-2.6.18/fs/asfs/asfs_fs.h 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/asfs_fs.h 2006-09-22 23:18:03.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/asfs_fs.h linux-2.6.19-rc6/fs/asfs/asfs_fs.h+--- linux-2.6.19-rc6/fs/asfs/asfs_fs.h 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/asfs_fs.h 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,217 @@+#ifndef __LINUX_ASFS_FS_H+#define __LINUX_ASFS_FS_H@@ -854,10 +1054,9 @@ diff -urN linux-2.6.18/fs/asfs/asfs_fs.h+int asfs_write_symlink(struct inode *symfile, const char *symname);++#endif-Pliki binarne linux-2.6.18/fs/asfs/asfs.ko i linux-2.6.18-asfs-1.0b11/fs/asfs/asfs.ko się różnią-diff -urN linux-2.6.18/fs/asfs/bitfuncs.c linux-2.6.18-asfs-1.0b11/fs/asfs/bitfuncs.c---- linux-2.6.18/fs/asfs/bitfuncs.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/bitfuncs.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/bitfuncs.c linux-2.6.19-rc6/fs/asfs/bitfuncs.c+--- linux-2.6.19-rc6/fs/asfs/bitfuncs.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/bitfuncs.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,171 @@+/*+ *@@ -1030,9 +1229,9 @@ diff -urN linux-2.6.18/fs/asfs/bitfuncs.+ }+ return (orgbits - bits);+}-diff -urN linux-2.6.18/fs/asfs/bitfuncs.h linux-2.6.18-asfs-1.0b11/fs/asfs/bitfuncs.h---- linux-2.6.18/fs/asfs/bitfuncs.h 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/bitfuncs.h 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/bitfuncs.h linux-2.6.19-rc6/fs/asfs/bitfuncs.h+--- linux-2.6.19-rc6/fs/asfs/bitfuncs.h 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/bitfuncs.h 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,59 @@+/*+ *@@ -1093,129 +1292,9 @@ diff -urN linux-2.6.18/fs/asfs/bitfuncs.+int bmset(u32 *, int, int, int);++#endif-diff -urN linux-2.6.18/fs/asfs/Changes linux-2.6.18-asfs-1.0b11/fs/asfs/Changes---- linux-2.6.18/fs/asfs/Changes 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/Changes 2006-09-22 23:24:31.000000000 +0200-@@ -0,0 +1,116 @@-+-+Amiga Smart File System, Linux implementation-+-+Please direct bug reports to: marek@amiga.pl-+-+History:-+-+v1.0beta11 (22.09.2006)-+- adapted to 2.6.18 kernel VFS changes-+- made some functions static to reduce overhead in kernel namespace-+-+v1.0beta10 (13.06.2005)-+- fixed ugly bug introduced in beta9 that caused kernel crash on x86-+ (thanks to Emiliano for reporting it!)-+-+v1.0beta9 (17.03.2005)-+- added NLS support (thanks to Pavel Fedin!)-+-+v1.0beta8 (07.01.2005)-+- adapted to 2.6.10 kernel VFS changes-+- added workaround for buggy Mandrake kernel headers-+-+v1.0beta7 (25.06.2004)-+- small changes in documentation-+- code clean up: bitfuncs.c, super.c, inode.c, *.h, Makefile, added-+ asfs_ prefix to function names, made some functions static-+ (big thanks to Christoph Hellwig for advice!)-+- fixed minor bugs (inode leak in super.c, not-realesed buffer during-+ object renaming in inode.c)-+- now files/dirs are created with global ownership/permission bits-+-+v1.0beta6 (04.06.2004)-+- fixed: ASFS_SB(sb)->flags was always zero in 2.6.x code-+-+v1.0beta5 (07.05.2004)-+- finally fixed a problem with file size attrib. not being written-+ to disk-+- fixed some problems with GCC 3.x and debug enabled-+-+v1.0beta4 (12.04.2004)-+- removed dummy asfs_notify_change (this fixes major bug introduced-+ in 1.0beta3 - file size wasn't written to disk) until it will-+ be implemented completely-+-+v1.0beta3 (22.03.2004) - still beta-+- updated for 2.6.x kernels VFS changes-+- code clean-up-+- added dummy asfs_notify_change (chmod now returns no errors)-+- added symlinks write support-+- fixed: ASFS_SB(sb)->flags was always zero-+-+v1.0beta2 (11.01.2004) - special version for Pegasos][ kernel-+- separated read and write functions, can be compiled also-+ as read-only fs-+-+v1.0beta1 (02.12.2003) - first public beta with write support-+- added dentry hashing/comparing routines-+- code clean-up-+-+v1.0aplha4 (30.11.2003) - preparing for first public beta-+- fixed some problems with renaming/moving files-+- fixed two major bugs, which didn't occur when fs was mounted-+ on loopback device (newly allocated blocks were not written to-+ disk and state bits were not set correctly on newly mapped file-+ blocks)-+- fixed many small bugs in io code (some buffers were not freed)-+- added/modified sb locks in asfs_lookup and asfs_getblock-+- fixed serious bug in file block allocation routines-+-+v1.0aplha3 (23.11.2003)-+- added (hopefully) all byteswap code, should now work again on-+ little-endian systems (also with write support!)-+- updated documentation-+-+v1.0alpha2 (13.11.2003)-+- now alocates file blocks in chunks during one request-+- fixed some dead-locks, other fixes-+-+v1.0alpha (02.11.2003) - first working version with full write support-+- too much to list it here ;)-+-+... (working on write support)-+-+v0.7 (12.10.2003) - internal realase-+- added asfs_breadcheck, modified asfs_get_node, asfs_search_BTree,-+ no more from_be32/16 macros, other...-+- code splitted into several files-+-+v0.6 (04.09.2003) - final read-only version-+- added support for HashTables, directory scaning should be-+ MUCH faster now-+- added checking of block IDs before reading any data from block-+-+v0.5 (19.07.2003)-+- added simple but effective extent cache - real speed-up-+ in reading large files-+- added read support for symlinks - based on AFFS symlinks-+-+v0.4 (10.07.2003)-+- third code clean-up (thanks to Roman Zippel for advice)-+- now uses generic readpage and readinode routines-+-+v0.3beta (17.06.2003)-+- second code clean-up-+-+v0.2beta2 (15.06.2003)-+- fixed yet another stupid bug - driver can't read root block on little-endian systems-+v0.2beta (15.06.2003)-+- fixed stupid bug - now files have 'file' flag (S_IFREG) set...-+- added mount options to set uid, gid and mode of files and dirs-+- made hidden files & dirs really hidden (= not listed in directories)-+- code clean-up-+-+v0.1beta (11.06.2003)-+- after many kernel crashes, finally got it!-+- first working read-only filesystem driver-diff -urN linux-2.6.18/fs/asfs/dir.c linux-2.6.18-asfs-1.0b11/fs/asfs/dir.c---- linux-2.6.18/fs/asfs/dir.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/dir.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/dir.c linux-2.6.19-rc6/fs/asfs/dir.c+--- linux-2.6.19-rc6/fs/asfs/dir.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/dir.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,240 @@+/*+ *@@ -1457,9 +1536,9 @@ diff -urN linux-2.6.18/fs/asfs/dir.c lin+ d_add(dentry, inode);+ return ERR_PTR(res);+}-diff -urN linux-2.6.18/fs/asfs/extents.c linux-2.6.18-asfs-1.0b11/fs/asfs/extents.c---- linux-2.6.18/fs/asfs/extents.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/extents.c 2006-09-22 23:22:48.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/extents.c linux-2.6.19-rc6/fs/asfs/extents.c+--- linux-2.6.19-rc6/fs/asfs/extents.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/extents.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,586 @@+/*+ *@@ -2047,9 +2126,9 @@ diff -urN linux-2.6.18/fs/asfs/extents.c+ return errorcode;+}+#endif-diff -urN linux-2.6.18/fs/asfs/file.c linux-2.6.18-asfs-1.0b11/fs/asfs/file.c---- linux-2.6.18/fs/asfs/file.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/file.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/file.c linux-2.6.19-rc6/fs/asfs/file.c+--- linux-2.6.19-rc6/fs/asfs/file.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/file.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,251 @@+/*+ *@@ -2302,9 +2381,9 @@ diff -urN linux-2.6.18/fs/asfs/file.c li+}++#endif-diff -urN linux-2.6.18/fs/asfs/inode.c linux-2.6.18-asfs-1.0b11/fs/asfs/inode.c---- linux-2.6.18/fs/asfs/inode.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/inode.c 2006-09-22 23:22:35.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/inode.c linux-2.6.19-rc6/fs/asfs/inode.c+--- linux-2.6.19-rc6/fs/asfs/inode.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/inode.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,436 @@+/*+ *@@ -2742,21 +2821,9 @@ diff -urN linux-2.6.18/fs/asfs/inode.c l+}+*/+#endif-diff -urN linux-2.6.18/fs/asfs/Makefile linux-2.6.18-asfs-1.0b11/fs/asfs/Makefile---- linux-2.6.18/fs/asfs/Makefile 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/Makefile 2006-09-22 22:52:37.000000000 +0200-@@ -0,0 +1,8 @@-+#-+# Makefile for the linux asfs filesystem routines.-+#-+-+obj-$(CONFIG_ASFS_FS) += asfs.o-+-+asfs-y += dir.o extents.o file.o inode.o namei.o nodes.o objects.o super.o symlink.o-+asfs-$(CONFIG_ASFS_RW) += adminspace.o bitfuncs.o-diff -urN linux-2.6.18/fs/asfs/namei.c linux-2.6.18-asfs-1.0b11/fs/asfs/namei.c---- linux-2.6.18/fs/asfs/namei.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/namei.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/namei.c linux-2.6.19-rc6/fs/asfs/namei.c+--- linux-2.6.19-rc6/fs/asfs/namei.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/namei.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,197 @@+/*+ *@@ -2955,9 +3022,9 @@ diff -urN linux-2.6.18/fs/asfs/namei.c l+ to[limit-1] = '\0';+ }+}-diff -urN linux-2.6.18/fs/asfs/nodes.c linux-2.6.18-asfs-1.0b11/fs/asfs/nodes.c---- linux-2.6.18/fs/asfs/nodes.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/nodes.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/nodes.c linux-2.6.19-rc6/fs/asfs/nodes.c+--- linux-2.6.19-rc6/fs/asfs/nodes.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/nodes.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,455 @@+/*+ *@@ -3414,9 +3481,9 @@ diff -urN linux-2.6.18/fs/asfs/nodes.c l+}++#endif-diff -urN linux-2.6.18/fs/asfs/objects.c linux-2.6.18-asfs-1.0b11/fs/asfs/objects.c---- linux-2.6.18/fs/asfs/objects.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/objects.c 2006-09-22 23:22:42.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/objects.c linux-2.6.19-rc6/fs/asfs/objects.c+--- linux-2.6.19-rc6/fs/asfs/objects.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/objects.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,765 @@+/*+ *@@ -4183,9 +4250,9 @@ diff -urN linux-2.6.18/fs/asfs/objects.c+ return 0;+}+#endif-diff -urN linux-2.6.18/fs/asfs/super.c linux-2.6.18-asfs-1.0b11/fs/asfs/super.c---- linux-2.6.18/fs/asfs/super.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/super.c 2006-09-22 23:22:22.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/super.c linux-2.6.19-rc6/fs/asfs/super.c+--- linux-2.6.19-rc6/fs/asfs/super.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/super.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,497 @@+/*+ *@@ -4684,9 +4751,9 @@ diff -urN linux-2.6.18/fs/asfs/super.c l++module_init(init_asfs_fs)+module_exit(exit_asfs_fs)-diff -urN linux-2.6.18/fs/asfs/symlink.c linux-2.6.18-asfs-1.0b11/fs/asfs/symlink.c---- linux-2.6.18/fs/asfs/symlink.c 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/fs/asfs/symlink.c 2006-09-22 22:52:37.000000000 +0200+diff -Nur linux-2.6.19-rc6/fs/asfs/symlink.c linux-2.6.19-rc6/fs/asfs/symlink.c+--- linux-2.6.19-rc6/fs/asfs/symlink.c 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/fs/asfs/symlink.c 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,235 @@+/*+ *@@ -4923,77 +4990,8 @@ diff -urN linux-2.6.18/fs/asfs/symlink.c+}++#endif-diff -urN linux-2.6.18/fs/Kconfig linux-2.6.18-asfs-1.0b11/fs/Kconfig---- linux-2.6.18/fs/Kconfig 2006-09-22 22:48:22.000000000 +0200-+++ linux-2.6.18-asfs-1.0b11/fs/Kconfig 2006-09-22 22:52:37.000000000 +0200-@@ -955,6 +955,53 @@- To compile this file system support as a module, choose M here: the- module will be called affs. If unsure, say N.--+config ASFS_FS-+ tristate "Amiga SFS file system support (EXPERIMENTAL)"-+ select NLS-+ depends on EXPERIMENTAL-+ help-+-+ The Amiga Smart FileSystem (SFS) is the file system used on hard-+ disks by Amiga(tm) and MorphOS(tm) systems. Say Y if you want-+ to be able to read files from an Amiga SFS partition on your hard-+ drive.-+-+ For more information read <file:Documentation/filesystems/asfs.txt>-+-+ To compile this file system support as a module, choose M here: the-+ module will be called asfs.-+-+ If unsure, say N.-+-+config ASFS_DEFAULT_CODEPAGE-+ string "Default codepage for SFS"-+ depends on ASFS_FS-+ default ""-+ help-+ This option should be set to the codepage of your SFS filesystems.-+ It can be overridden with the 'codepage' mount option. Leave it blank-+ or enter 'none' to disable filename converting.-+-+ Use full codepage name (for example 'cp1251' instead of '1251') here,-+ this allows to specify any character set, not only numbered one (like-+ 'iso8859-2').-+-+ If unsure, leave it blank.-+-+config ASFS_RW-+ bool "Amiga SFS write support (DANGEROUS)"-+ depends on ASFS_FS-+ help-+-+ If you say Y here, you will be able to write to ASFS file-+ systems as well as read from them. The read-write support in ASFS-+ is in beta stage. This means that useing it to write files to SFS-+ partitions is DANGEROUS and COULD corrupt the filesystem.-+-+ For more information read <file:Documentation/filesystems/asfs.txt>-+-+ If unsure, say N.-+- config HFS_FS- tristate "Apple Macintosh file system support (EXPERIMENTAL)"- depends on EXPERIMENTAL-diff -urN linux-2.6.18/fs/Makefile linux-2.6.18-asfs-1.0b11/fs/Makefile---- linux-2.6.18/fs/Makefile 2006-09-22 22:48:22.000000000 +0200-+++ linux-2.6.18-asfs-1.0b11/fs/Makefile 2006-09-22 22:52:37.000000000 +0200-@@ -85,6 +85,7 @@- obj-$(CONFIG_JFFS_FS) += jffs/- obj-$(CONFIG_JFFS2_FS) += jffs2/- obj-$(CONFIG_AFFS_FS) += affs/-+obj-$(CONFIG_ASFS_FS) += asfs/- obj-$(CONFIG_ROMFS_FS) += romfs/- obj-$(CONFIG_QNX4FS_FS) += qnx4/- obj-$(CONFIG_AUTOFS_FS) += autofs/-diff -urN linux-2.6.18/include/linux/amigasfs.h linux-2.6.18-asfs-1.0b11/include/linux/amigasfs.h---- linux-2.6.18/include/linux/amigasfs.h 1970-01-01 01:00:00.000000000 +0100-+++ linux-2.6.18-asfs-1.0b11/include/linux/amigasfs.h 2006-09-22 22:52:37.000000000 +0200+--- linux-2.6.19-rc6/include/linux/amigasfs.h 1970-01-01 01:00:00.000000000 +0100++++ linux-2.6.19-rc6/include/linux/amigasfs.h 2006-11-24 18:19:03.000000000 +0100@@ -0,0 +1,276 @@+#ifndef __LINUX_AMIGASFS_H+#define __LINUX_AMIGASFS_H@@ -5271,6 +5269,3 @@ diff -urN linux-2.6.18/include/linux/ami+};++#endif---
--- a/2.6.18/5000_grml-version.patch Sat Nov 25 22:28:17 2006 +0100+++ b/2.6.18/5000_grml-version.patch Sun Nov 26 11:04:54 2006 +0100@@ -4,7 +4,7 @@VERSION = 2PATCHLEVEL = 6SUBLEVEL = 18--EXTRAVERSION = .2+-EXTRAVERSION = .3+EXTRAVERSION = -grmlNAME=Avast! A bilge rat!
--- a/config/config-2.6.18-grml Sat Nov 25 22:28:17 2006 +0100+++ b/config/config-2.6.18-grml Sun Nov 26 11:04:54 2006 +0100@@ -1,7 +1,7 @@## Automatically generated make config: don't edit# Linux kernel version: 2.6.18-grml-# Tue Nov 7 18:55:26 2006+# Sun Nov 26 00:09:15 2006#CONFIG_X86_32=yCONFIG_GENERIC_TIME=y@@ -1211,12 +1211,14 @@ CONFIG_SCSI_LOGGING=yCONFIG_SCSI_LOGGING=y#-# SCSI Transport Attributes+# SCSI Transport#CONFIG_SCSI_SPI_ATTRS=yCONFIG_SCSI_FC_ATTRS=yCONFIG_SCSI_ISCSI_ATTRS=yCONFIG_SCSI_SAS_ATTRS=y+CONFIG_SCSI_SAS_LIBSAS=y+CONFIG_SCSI_SAS_LIBSAS_DEBUG=y## SCSI low-level drivers@@ -1246,6 +1248,8 @@ CONFIG_AIC79XX_DEBUG_ENABLE=yCONFIG_AIC79XX_DEBUG_ENABLE=yCONFIG_AIC79XX_DEBUG_MASK=0CONFIG_AIC79XX_REG_PRETTY_PRINT=y+CONFIG_SCSI_AIC94XX=m+CONFIG_AIC94XX_DEBUG=yCONFIG_SCSI_DPT_I2O=mCONFIG_SCSI_ADVANSYS=mCONFIG_SCSI_IN2000=m
--- /dev/null Thu Jan 01 00:00:00 1970 +0000+++ b/2.6.18/2300_UCR-61S2B-unusual_dev-update.patch Sun Nov 26 11:04:54 2006 +0100@@ -0,0 +1,30 @@+From: Phil Dibowitz <phil@ipom.com>+Date: Fri, 3 Nov 2006 07:14:10 +0000 (-0800)+Subject: USB: Fix UCR-61S2B unusual_dev entry+X-Git-Url: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=51b5bce8c253b82d4789161cc3b0c74bee313bb1++USB: Fix UCR-61S2B unusual_dev entry++Recently this entry's bcd scope was narrowed so as not to falsly apply+to bcd's other than 0x0110. But while it breaks those of a larger bcd,+it is still needed for those of a smaller bcd - so this changes the+lower bcd limit to 0x0000.++Signed-off-by: Phil Dibowitz <phil@ipom.com>+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>+---++--- a/drivers/usb/storage/unusual_devs.h++++ b/drivers/usb/storage/unusual_devs.h+@@ -1323,8 +1323,10 @@ UNUSUAL_DEV( 0x0fce, 0xe030, 0x0000, 0x+ /* Reported by Kevin Cernekee <kpc-usbdev@gelato.uiuc.edu>+ * Tested on hardware version 1.10.+ * Entry is needed only for the initializer function override.++ * Devices with bcd > 110 seem to not need it while those++ * with bcd < 110 appear to need it.+ */+-UNUSUAL_DEV( 0x1019, 0x0c55, 0x0110, 0x0110,++UNUSUAL_DEV( 0x1019, 0x0c55, 0x0000, 0x0110,+ "Desknote",+ "UCR-61S2B",+ US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init,
--- /dev/null Thu Jan 01 00:00:00 1970 +0000+++ b/2.6.18/2410_bcm43xx-drain-tx-status-before-starting-irqs.patch Sun Nov 26 11:04:54 2006 +0100@@ -0,0 +1,57 @@+From stable-bounces@linux.kernel.org Sun Nov 5 13:38:59 2006+Date: Sun, 05 Nov 2006 15:34:36 -0600+From: Larry Finger <Larry.Finger@lwfinger.net>+To: stable@kernel.org+Message-ID: <454E58EC.mail20S110EOC@lwfinger.net>+Cc: netdev@vger.kernel.org, mb@bu3sch.de, greg@kroah.com+Subject: bcm43xx: Drain TX status before starting IRQs++From: Michael Buesch <mb@bu3sch.de>++Drain the Microcode TX-status-FIFO before we enable IRQs.+This is required, because the FIFO may still have entries left+from a previous run. Those would immediately fire after enabling+IRQs and would lead to an oops in the DMA TXstatus handling code.++Cc: "John W. Linville" <linville@tuxdriver.com>+Signed-off-by: Michael Buesch <mb@bu3sch.de>+Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>+Signed-off-by: Chris Wright <chrisw@sous-sol.org>+---+ drivers/net/wireless/bcm43xx/bcm43xx_main.c | 18 +++++++++++++++++++ 1 file changed, 18 insertions(+)++--- linux-2.6.18.2.orig/drivers/net/wireless/bcm43xx/bcm43xx_main.c++++ linux-2.6.18.2/drivers/net/wireless/bcm43xx/bcm43xx_main.c+@@ -1463,6 +1463,23 @@ static void handle_irq_transmit_status(s+ }+ }+++static void drain_txstatus_queue(struct bcm43xx_private *bcm)++{++ u32 dummy;++++ if (bcm->current_core->rev < 5)++ return;++ /* Read all entries from the microcode TXstatus FIFO++ * and throw them away.++ */++ while (1) {++ dummy = bcm43xx_read32(bcm, BCM43xx_MMIO_XMITSTAT_0);++ if (!dummy)++ break;++ dummy = bcm43xx_read32(bcm, BCM43xx_MMIO_XMITSTAT_1);++ }++}+++ static void bcm43xx_generate_noise_sample(struct bcm43xx_private *bcm)+ {+ bcm43xx_shm_write16(bcm, BCM43xx_SHM_SHARED, 0x408, 0x7F7F);+@@ -3517,6 +3534,7 @@ int bcm43xx_select_wireless_core(struct+ bcm43xx_macfilter_clear(bcm, BCM43xx_MACFILTER_ASSOC);+ bcm43xx_macfilter_set(bcm, BCM43xx_MACFILTER_SELF, (u8 *)(bcm->net_dev->dev_addr));+ bcm43xx_security_init(bcm);++ drain_txstatus_queue(bcm);+ ieee80211softmac_start(bcm->net_dev);++ /* Let's go! Be careful after enabling the IRQs.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000+++ b/2.6.18/2420_sctp-backports-1.patch Sun Nov 26 11:04:54 2006 +0100@@ -0,0 +1,331 @@+From: Sridhar Samudrala <sri@us.ibm.com>+Date: Tue, 22 Aug 2006 07:15:33 +0000 (-0700)+Subject: [SCTP]: Extend /proc/net/sctp/snmp to provide more statistics.+X-Git-Tag: v2.6.19-rc1+X-Git-Url: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=ac0b04627269ff16c3c7ab854a65fe6780c6e3e5++[SCTP]: Extend /proc/net/sctp/snmp to provide more statistics.++This patch adds more statistics info under /proc/net/sctp/snmp+that should be useful for debugging. The additional events that+are counted now include timer expirations, retransmits, packet+and data chunk discards.++The Data chunk discards include all the cases where a data chunk+is discarded including high tsn, bad stream, dup tsn and the most+useful one(out of receive buffer/rwnd).++Also moved the SCTP MIB data structures from the generic include+directories to include/sctp/sctp.h.++Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>+Signed-off-by: David S. Miller <davem@davemloft.net>+---++--- a/include/linux/snmp.h++++ b/include/linux/snmp.h+@@ -160,39 +160,6 @@ enum+ __UDP_MIB_MAX+ };++-/* sctp mib definitions */+-/*+- * draft-ietf-sigtran-sctp-mib-07.txt+- */+-enum+-{+- SCTP_MIB_NUM = 0,+- SCTP_MIB_CURRESTAB, /* CurrEstab */+- SCTP_MIB_ACTIVEESTABS, /* ActiveEstabs */+- SCTP_MIB_PASSIVEESTABS, /* PassiveEstabs */+- SCTP_MIB_ABORTEDS, /* Aborteds */+- SCTP_MIB_SHUTDOWNS, /* Shutdowns */+- SCTP_MIB_OUTOFBLUES, /* OutOfBlues */+- SCTP_MIB_CHECKSUMERRORS, /* ChecksumErrors */+- SCTP_MIB_OUTCTRLCHUNKS, /* OutCtrlChunks */+- SCTP_MIB_OUTORDERCHUNKS, /* OutOrderChunks */+- SCTP_MIB_OUTUNORDERCHUNKS, /* OutUnorderChunks */+- SCTP_MIB_INCTRLCHUNKS, /* InCtrlChunks */+- SCTP_MIB_INORDERCHUNKS, /* InOrderChunks */+- SCTP_MIB_INUNORDERCHUNKS, /* InUnorderChunks */+- SCTP_MIB_FRAGUSRMSGS, /* FragUsrMsgs */+- SCTP_MIB_REASMUSRMSGS, /* ReasmUsrMsgs */+- SCTP_MIB_OUTSCTPPACKS, /* OutSCTPPacks */+- SCTP_MIB_INSCTPPACKS, /* InSCTPPacks */+- SCTP_MIB_RTOALGORITHM, /* RtoAlgorithm */+- SCTP_MIB_RTOMIN, /* RtoMin */+- SCTP_MIB_RTOMAX, /* RtoMax */+- SCTP_MIB_RTOINITIAL, /* RtoInitial */+- SCTP_MIB_VALCOOKIELIFE, /* ValCookieLife */+- SCTP_MIB_MAXINITRETR, /* MaxInitRetr */+- __SCTP_MIB_MAX+-};+-+ /* linux mib definitions */+ enum+ {+--- a/include/net/sctp/sctp.h++++ b/include/net/sctp/sctp.h+@@ -216,6 +216,50 @@ DECLARE_SNMP_STAT(struct sctp_mib, sctp_++ #endif /* !TEST_FRAME */+++/* sctp mib definitions */++enum++{++ SCTP_MIB_NUM = 0,++ SCTP_MIB_CURRESTAB, /* CurrEstab */++ SCTP_MIB_ACTIVEESTABS, /* ActiveEstabs */++ SCTP_MIB_PASSIVEESTABS, /* PassiveEstabs */++ SCTP_MIB_ABORTEDS, /* Aborteds */++ SCTP_MIB_SHUTDOWNS, /* Shutdowns */++ SCTP_MIB_OUTOFBLUES, /* OutOfBlues */++ SCTP_MIB_CHECKSUMERRORS, /* ChecksumErrors */++ SCTP_MIB_OUTCTRLCHUNKS, /* OutCtrlChunks */++ SCTP_MIB_OUTORDERCHUNKS, /* OutOrderChunks */++ SCTP_MIB_OUTUNORDERCHUNKS, /* OutUnorderChunks */++ SCTP_MIB_INCTRLCHUNKS, /* InCtrlChunks */++ SCTP_MIB_INORDERCHUNKS, /* InOrderChunks */++ SCTP_MIB_INUNORDERCHUNKS, /* InUnorderChunks */++ SCTP_MIB_FRAGUSRMSGS, /* FragUsrMsgs */++ SCTP_MIB_REASMUSRMSGS