186d7f5d3SJohn Marino$Id: TODO,v 1.1 2002/11/24 19:47:06 max Exp $ 286d7f5d3SJohn Marino$FreeBSD: src/sys/netgraph/bluetooth/l2cap/TODO,v 1.2 2003/05/10 21:44:41 julian Exp $ 386d7f5d3SJohn Marino 486d7f5d3SJohn MarinoFIXME/TODO list 586d7f5d3SJohn Marino 686d7f5d3SJohn Marino0) Ping itself. Should L2CAP layer loopback data? 786d7f5d3SJohn Marino 886d7f5d3SJohn Marino1) Locking/SMP 986d7f5d3SJohn Marino 1086d7f5d3SJohn Marino External code now uses ng_send_fn to inject data into Netgraph, so 1186d7f5d3SJohn Marino it should be fine as long as Netgraph is SMP safe. Just need to 1286d7f5d3SJohn Marino verify it. 1386d7f5d3SJohn Marino 1486d7f5d3SJohn Marino2) Understand and implement L2CAP QoS 1586d7f5d3SJohn Marino 1686d7f5d3SJohn Marino Will fix later. I only have CSR based hardware and it does not 1786d7f5d3SJohn Marino support QoS. 1886d7f5d3SJohn Marino 1986d7f5d3SJohn Marino3) Better functions to manage CIDs and command ident's. 2086d7f5d3SJohn Marino 2186d7f5d3SJohn Marino Resource manager is not good because it uses MTX_DEF mutexes, 2286d7f5d3SJohn Marino (i.e. could block/sleep) 2386d7f5d3SJohn Marino 2486d7f5d3SJohn Marino4) Implement group channels (multicast) 2586d7f5d3SJohn Marino 2686d7f5d3SJohn Marino Will fix later 2786d7f5d3SJohn Marino 2886d7f5d3SJohn Marino5) Add bytes/packets counters and commands to get/reset them 2986d7f5d3SJohn Marino 3086d7f5d3SJohn Marino Will fix later. What to count? 3186d7f5d3SJohn Marino 3286d7f5d3SJohn Marino6) Better way to get information about channels 3386d7f5d3SJohn Marino 3486d7f5d3SJohn Marino L2CAP can support about 65000 channels. Need define some good way 3586d7f5d3SJohn Marino to get data from kernel to user space. For example if we need to pass 3686d7f5d3SJohn Marino 1K of information for every channel, then worst case is that we need 3786d7f5d3SJohn Marino to pass 65Mbytes of data from kernel to user space. Not good. 3886d7f5d3SJohn Marino 3986d7f5d3SJohn Marino7) Deal properly with "shutdown"s and hook "disconnect"s 4086d7f5d3SJohn Marino 4186d7f5d3SJohn Marino For now we destroy all channels when upstream hook is disconnected. 4286d7f5d3SJohn Marino Is there a better way to handle this? 4386d7f5d3SJohn Marino 44