[openib-general] Re: tvflash questions
Hal tvflash -v -d fw-23108-rel-3_2_0/fw-23108-a1-rel.mlx GUID tvflash uses binary firmware images, not mlx format. See the README. - R. ___ openib-general mailing list [EMAIL PROTECTED] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
Re: [openib-general] InfiniBand incompatible with the Linux kernel?
At 02:11 PM 10/9/2004, you wrote: Jeff If there is questionable code, that is _not_ a justification Jeff to add more. I guess my point was not that the bluetooth stack is somehow questionable, but rather that the IP policies of a standards bodies are really not a good reason to keep code out of the kernel. If someone can name one patent that the IB driver stack looks like it might possibly run into, then we would have to take that very seriously. However, no one has done this here -- all we have is FUD or guilt by association or whatever you want to call it. The mere fact that the IBTA bylaws only require members license their patents under RAND terms shouldn't be an issue. If nothing else, the fact that there are hugely more non-IBTA member companies than member companies who might have patents makes the IBTA bylaws almost a moot point. It isn't a numbers game when it comes to the law. For what its worth, I know of at least five companies shipping IB stacks and the only patent licensing that I know of is the Microsoft SDP license, The lack of companies enforcing their patents at this time does not mean that they will not do so in the future. There are many patents in the IB specification suite. The question is whether these apply to the software stack being done within this forum. Until a company comes forward and states their intention, there is no way to tell. Not attempting any FUD here as I don't see a reason to stop development of any of a wide range of technologies that are covered by similar terms in various industry bodies. and even that is really just CYA: all Microsoft says is that they _might_ have patents that cover SDP and that they will license them at no cost to anyone who wants them; unfortunately this license is not GPL-compatible, but for proprietary stacks the zero-cost terms look fine. There are people who have looked at Microsoft's patents and concluded that none of them actually apply to SDP as specified by the IBTA. The patent office is the only one who can draw a conclusion that can be relied upon. I'd never rely upon hearsay in making a decision. Mike ___ openib-general mailing list [EMAIL PROTECTED] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
[openib-general] [PATCH] ib_mad: Add module name to messages
ib_mad: Add modules name to messages Index: ib_mad_priv.h === --- ib_mad_priv.h (revision 965) +++ ib_mad_priv.h (working copy) @@ -61,6 +61,9 @@ #include ib_mad.h #include ib_smi.h + +#define PFX ib_mad: + #define IB_MAD_QPS_CORE2 /* Always QP0 and QP1 as a minimum */ /* QP and CQ parameters */ Index: ib_mad.c === --- ib_mad.c(revision 966) +++ ib_mad.c(working copy) @@ -308,7 +308,7 @@ port_priv-send_posted_mad_list); port_priv-send_posted_mad_count++; } else { - printk(KERN_NOTICE ib_post_send failed ret = %d\n, ret); + printk(KERN_NOTICE PFX ib_post_send failed ret = %d\n, ret); *bad_send_wr = send_wr; } spin_unlock_irqrestore(port_priv-send_list_lock, flags); @@ -353,7 +353,7 @@ GFP_ATOMIC : GFP_KERNEL); if (!mad_send_wr) { *bad_send_wr = cur_send_wr; - printk(KERN_ERR No memory for + printk(KERN_ERR PFX No memory for ib_mad_send_wr_private\n); return -ENOMEM; } @@ -432,7 +432,7 @@ void ib_coalesce_recv_mad(struct ib_mad_recv_wc *mad_recv_wc, void *buf) { - printk(KERN_ERR ib_coalesce_recv_mad() not implemented yet\n); + printk(KERN_ERR PFX ib_coalesce_recv_mad() not implemented yet\n); } EXPORT_SYMBOL(ib_coalesce_recv_mad); @@ -449,7 +449,7 @@ int ib_process_mad_wc(struct ib_mad_agent *mad_agent, struct ib_wc *wc) { - printk(KERN_ERR ib_process_mad_wc() not implemented yet\n); + printk(KERN_ERR PFX ib_process_mad_wc() not implemented yet\n); return 0; } EXPORT_SYMBOL(ib_process_mad_wc); @@ -471,7 +471,7 @@ i = find_next_bit(mad_reg_req-method_mask, IB_MGMT_MAX_METHODS, 1+i)) { if ((*method)-agent[i]) { - printk(KERN_ERR Method %d already in use\n, i); + printk(KERN_ERR PFX Method %d already in use\n, i); return -EINVAL; } } @@ -483,7 +483,7 @@ /* Allocate management method table */ *method = kmalloc(sizeof **method, GFP_KERNEL); if (!*method) { - printk(KERN_ERR No memory for ib_mad_mgmt_method_table\n); + printk(KERN_ERR PFX No memory for ib_mad_mgmt_method_table\n); return -ENOMEM; } /* Clear management method table */ @@ -556,7 +556,7 @@ /* Allocate management class table for new class version */ *class = kmalloc(sizeof **class, GFP_KERNEL); if (!*class) { - printk(KERN_ERR No memory for + printk(KERN_ERR PFX No memory for ib_mad_mgmt_class_table\n); goto error1; } @@ -628,8 +628,8 @@ port_priv = agent_priv-port_priv; class = port_priv-version[agent_priv-reg_req-mgmt_class_version]; if (!class) { - printk(KERN_ERR No class table yet MAD registration request - supplied\n); + printk(KERN_ERR PFX No class table yet MAD registration + request supplied\n); goto ret; } @@ -713,21 +713,21 @@ } } if (!mad_agent) { - printk(KERN_ERR No client 0x%x for received MAD on - port %d\n, hi_tid, port_priv-port_num); + printk(KERN_ERR PFX No client 0x%x for received MAD + on port %d\n, hi_tid, port_priv-port_num); goto ret; } } else { /* Routing is based on version, class, and method */ if (mad-mad_hdr.class_version = MAX_MGMT_VERSION) { - printk(KERN_ERR MAD received with unsupported class - version %d on port %d\n, + printk(KERN_ERR PFX MAD received with unsupported + class version %d on port %d\n, mad-mad_hdr.class_version, port_priv-port_num); goto ret; } version = port_priv-version[mad-mad_hdr.class_version]; if (!version) { - printk(KERN_ERR MAD received on port %d for class + printk(KERN_ERR PFX MAD received on port %d for class version %d with no client\n, port_priv-port_num,
[openib-general] [PATCH] ib_smi: Add module names to messages
ib_smi: Add modules names to messages Index: ib_smi_priv.h === --- ib_smi_priv.h (revision 965) +++ ib_smi_priv.h (working copy) @@ -28,6 +28,8 @@ #include linux/pci.h +#define SPFX ib_sma: + struct ib_smi_send_wr { struct list_head send_list; struct ib_mad *smp; Index: ib_smi.c === --- ib_smi.c(revision 965) +++ ib_smi.c(working copy) @@ -322,7 +322,7 @@ } spin_unlock_irqrestore(ib_smi_port_list_lock, flags); if (!port_priv) { - printk(KERN_ERR smp_send: no matching MAD agent 0x%x\n, + printk(KERN_ERR SPFX smp_send: no matching MAD agent 0x%x\n, (unsigned int)mad_agent); return; } @@ -357,7 +357,7 @@ ah = ib_create_ah(mad_agent-qp-pd, ah_attr); if (IS_ERR(ah)) { - printk(KERN_ERR No memory for address handle\n); + printk(KERN_ERR SPFX No memory for address handle\n); kfree(smp); return; } @@ -467,7 +467,7 @@ /* Hold lock longer !!! */ spin_unlock_irqrestore(ib_smi_port_list_lock, flags); if (!port_priv) { - printk(KERN_ERR smi_send_handler: no matching MAD agent + printk(KERN_ERR SPFX smi_send_handler: no matching MAD agent 0x%x\n, (unsigned int)mad_agent); return; } @@ -476,7 +476,7 @@ spin_lock_irqsave(port_priv-send_list_lock, flags); if (list_empty(port_priv-send_posted_smp_list)) { spin_unlock_irqrestore(port_priv-send_list_lock, flags); - printk(KERN_ERR Send completion WR ID 0x%Lx but send list + printk(KERN_ERR SPFX Send completion WR ID 0x%Lx but send list is empty\n, mad_send_wc-wr_id); return; } @@ -535,7 +535,7 @@ } spin_unlock_irqrestore(ib_smi_port_list_lock, flags); if (port_priv) { - printk(KERN_DEBUG %s port %d already open\n, + printk(KERN_DEBUG SPFX %s port %d already open\n, device-name, port_num); return 0; } @@ -543,7 +543,7 @@ /* Create new device info */ port_priv = kmalloc(sizeof *port_priv, GFP_KERNEL); if (!port_priv) { - printk(KERN_ERR No memory for ib_smi_port_private\n); + printk(KERN_ERR SPFX No memory for ib_smi_port_private\n); ret = -ENOMEM; goto error1; } @@ -606,7 +606,7 @@ buf_list, 1, IB_ACCESS_LOCAL_WRITE, iova); if (IS_ERR(port_priv-mr)) { - printk(KERN_ERR Couldn't register MR\n); + printk(KERN_ERR SPFX Couldn't register MR\n); ret = PTR_ERR(port_priv-mr); goto error5; } @@ -644,7 +644,7 @@ } if (port_priv == NULL) { - printk(KERN_ERR Port %d not found\n, port_num); + printk(KERN_ERR SPFX Port %d not found\n, port_num); spin_unlock_irqrestore(ib_smi_port_list_lock, flags); return -ENODEV; } @@ -668,7 +668,7 @@ ret = ib_query_device(device, device_attr); if (ret) { - printk(KERN_ERR Couldn't query device %s\n, device-name); + printk(KERN_ERR SPFX Couldn't query device %s\n, device-name); goto error_device_query; } @@ -683,7 +683,7 @@ for (i = 0; i num_ports; i++, cur_port++) { ret = ib_smi_port_open(device, cur_port); if (ret) { - printk(KERN_ERR Couldn't open %s port %d\n, + printk(KERN_ERR SPFX Couldn't open %s port %d\n, device-name, cur_port); goto error_device_open; } @@ -696,7 +696,7 @@ cur_port--; ret2 = ib_smi_port_close(device, cur_port); if (ret2) { - printk(KERN_ERR Couldn't close %s port %d\n, + printk(KERN_ERR SPFX Couldn't close %s port %d\n, device-name, cur_port); } i--; @@ -713,7 +713,7 @@ ret = ib_query_device(device, device_attr); if (ret) { - printk(KERN_ERR Couldn't query device %s\n, device-name); + printk(KERN_ERR SPFX Couldn't query device %s\n, device-name); goto error_device_query; } @@ -727,7 +727,7 @@ for (i = 0; i num_ports; i++, cur_port++) { ret2 = ib_smi_port_close(device, cur_port); if (ret2) { - printk(KERN_ERR Couldn't close %s port %d\n, +
Re: [openib-general] InfiniBand incompatible with the Linux kernel?
At 11:27 AM 10/11/2004, Ronald G. Minnich wrote: On Fri, 8 Oct 2004, Michael Krause wrote: Spec for free or spec for a price - neither grants anyone rights to any IP contained within the specifications or on the technologies that surround the specification. The change in spec cost, while clearly unfortunate, has no impact on the IP rights. IP rights are defined by the IBTA membership agreement (just like they are for PCI and any number of other technologies used within the industry). If you want to implement a technology, then you have to be a member of the appropriate organization and agree to the same industry-wide terms that others do. Hence, this problem is not IB-specific but a fact of life within the industry. funny, I don't recall these problems with Ethernet. IEEE requires RAND licensing by companies; it does not license the technology to individuals. So the same problems exist for Ethernet as it does for IB as it does for many technologies. Again, this is true of many technologies not just IB. For example, if a company has patents on PCI Express and someone implements a device / chipset / whatever and they are not part of the PCI-SIG, then they can be subject to different terms than someone who is a member of the PCI-SIG. In both cases, the access to specs, etc. has nothing to do with IP licensing. sorry, I think about protocol software differently than chips. Maybe I'm thinking incorrectly here. There are software patents in all of these protocol off-load technologies just like there are hardware patents. As people start to use embedded processors for various communication workloads, the line between software and hardware patents will blur even further. Mike ___ openib-general mailing list [EMAIL PROTECTED] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general