Archive

Author Archive

wireshark 1.2.1 安装包缺少eap.xml Bug

July 28th, 2009 BianJiang No comments

今天下载了wireshark最新的版本1.2.1,编译安装完后,在用的时候报错:

Could not open file: ‘eap.xml’, error: No such file or directory
搜了一下发现,是因为wireshark1.2.1在打包的时候忘了把 diameter/eap.xml 放进去。详细的信息可以参考 "Missing diameter/eap.xml in 1.2.1" 和
"New: eap.xml missing from source tarfile".

简单的修改,从这下载 eap.xml 文件放到 wireshark-1.2.1/diameter/ 目录下, 并在文件 wireshark-1.2.1/Makefile.am 120行增加:
diameter/eap.xml \

增加以后的文件为(116~131):

diameter_DATA = \
diameter/chargecontrol.xml \
diameter/dictionary.dtd \
diameter/dictionary.xml \
diameter/eap.xml \
diameter/Ericsson.xml \
diameter/etsie2e4.xml \
diameter/gqpolicy.xml \
diameter/imscxdx.xml \
diameter/mobileipv4.xml \
diameter/nasreq.xml \
diameter/sip.xml \
diameter/sunping.xml \
diameter/TGPPGmb.xml \
diameter/TGPPRx.xml \
diameter/TGPPSh.xml

参考:
1. “New: eap.xml missing from source tarfile” http://www.wireshark.org/lists/wireshark-dev/200907/msg00273.html
2. “Missing diameter/eap.xml in 1.2.1″ https://www.wireshark.org/lists/wireshark-bugs/200907/msg00621.html

Categories: Tech.Notes Tags: , ,

Create and push an annotated tag in Git

July 23rd, 2009 BianJiang No comments

# Create a tag on most current commit
git tag -a -m “tagging version 1.0″ v1.0

# Create a tag on a specific commit
git tag -a -m “tagging version 1.0″ v1.0 ec78b6b0778a1e02cb9554ce2dca4fcdd7a08a7d

# List tags
git tag -l

# Push tags to remote repository
git push –tags

# Push specific tag to remote repository
git push origin :tag_name

# Deleting a tag locally
git tag -d “v1.0″

# To push the deletion to remote repository
git push origin :refs/tags/v1.0

git tag options
-a
Make an unsigned, annotated tag object
-s
Make a GPG-signed tag, using the default e-mail address’s key
-u <key-id>
Make a GPG-signed tag, using the given key
-f
Replace an existing tag with the given name (instead of failing)
-d
Delete existing tags with the given names.
-v
Verify the gpg signature of the given tag names.
-l <pattern>
List tags with names that match the given pattern (or all if no pattern is given). Typing “git tag” without arguments, also lists all tags.
-m <msg>
Use the given tag message (instead of prompting). If multiple -m options are given, their values are concatenated as separate paragraphs. Implies -a if none of -a, -s, or -u <key-id> is given.

参考:
1. http://snipplr.com/view/16739/create-and-push-an-annotated-tag-in-git/
2. http://www.kernel.org/pub/software/scm/git/docs/git-push.html
3. http://www.kernel.org/pub/software/scm/git/docs/git-tag.html

Categories: Tech.Notes Tags: , ,

linux-2.6.30 with gcc-3.4.6 compile error

July 20th, 2009 BianJiang No comments

想通过codeviz看linux kernel的调用关系, 但是codeviz用的是gcc-3.4.6,

但在用gcc-3.4.6编译linux-2.6.30的时候报错:

 drivers/net/igb/igb_main.c: In function `igb_up':
 drivers/net/igb/igb_main.c:130: sorry, unimplemented: inlining failed
 in call to 'igb_set_rah_pool': function body not available
 drivers/net/igb/igb_main.c:938: sorry, unimplemented: called from here
 drivers/net/igb/igb_main.c:133: sorry, unimplemented: inlining failed
 in call to 'igb_set_vmolr': function body not available
 drivers/net/igb/igb_main.c:939: sorry, unimplemented: called from here
 make[3]: *** [drivers/net/igb/igb_main.o] Error 1
 make[2]: *** [drivers/net/igb] Error 2
 make[1]: *** [drivers/net] Error 2
 make: *** [drivers] Error 2
 
 This is CentOS 4.x system.  While using same configuration to compile
 in CentOS 5.x systems with gcc-4.1.2 do not encounter such error and
 my guess is gcc version issue?  Any idea?

Linux-2.6.30 Linux-2.6.30.1使用gcc-3.4.6编译错误补丁:

diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index be48029..adb09d3 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -127,14 +127,48 @@  static void igb_restore_vlan(struct igb_adapter *);
 static void igb_ping_all_vfs(struct igb_adapter *);
 static void igb_msg_task(struct igb_adapter *);
 static int igb_rcv_msg_from_vf(struct igb_adapter *, u32);
-static inline void igb_set_rah_pool(struct e1000_hw *, int , int);
 static void igb_set_mc_list_pools(struct igb_adapter *, int, u16);
 static void igb_vmm_control(struct igb_adapter *);
-static inline void igb_set_vmolr(struct e1000_hw *, int);
-static inline int igb_set_vf_rlpml(struct igb_adapter *, int, int);
 static int igb_set_vf_mac(struct igb_adapter *adapter, int, unsigned char *);
 static void igb_restore_vf_multicasts(struct igb_adapter *adapter);

+static inline void igb_set_vmolr(struct e1000_hw *hw, int vfn)
+{
+	u32 reg_data;
+
+	reg_data = rd32(E1000_VMOLR(vfn));
+	reg_data |= E1000_VMOLR_BAM |	 /* Accept broadcast */
+	            E1000_VMOLR_ROPE |   /* Accept packets matched in UTA */
+	            E1000_VMOLR_ROMPE |  /* Accept packets matched in MTA */
+	            E1000_VMOLR_AUPE |   /* Accept untagged packets */
+	            E1000_VMOLR_STRVLAN; /* Strip vlan tags */
+	wr32(E1000_VMOLR(vfn), reg_data);
+}
+
+static inline int igb_set_vf_rlpml(struct igb_adapter *adapter, int size,
+                                 int vfn)
+{
+	struct e1000_hw *hw = &adapter->hw;
+	u32 vmolr;
+
+	vmolr = rd32(E1000_VMOLR(vfn));
+	vmolr &= ~E1000_VMOLR_RLPML_MASK;
+	vmolr |= size | E1000_VMOLR_LPE;
+	wr32(E1000_VMOLR(vfn), vmolr);
+
+	return 0;
+}
+
+static inline void igb_set_rah_pool(struct e1000_hw *hw, int pool, int entry)
+{
+	u32 reg_data;
+
+	reg_data = rd32(E1000_RAH(entry));
+	reg_data &= ~E1000_RAH_POOL_MASK;
+	reg_data |= E1000_RAH_POOL_1 << pool;;
+	wr32(E1000_RAH(entry), reg_data);
+}
+
 #ifdef CONFIG_PM
 static int igb_suspend(struct pci_dev *, pm_message_t);
 static int igb_resume(struct pci_dev *);
@@ -5418,43 +5452,6 @@  static void igb_io_resume(struct pci_dev *pdev)
 	igb_get_hw_control(adapter);
 }

-static inline void igb_set_vmolr(struct e1000_hw *hw, int vfn)
-{
-	u32 reg_data;
-
-	reg_data = rd32(E1000_VMOLR(vfn));
-	reg_data |= E1000_VMOLR_BAM |	 /* Accept broadcast */
-	            E1000_VMOLR_ROPE |   /* Accept packets matched in UTA */
-	            E1000_VMOLR_ROMPE |  /* Accept packets matched in MTA */
-	            E1000_VMOLR_AUPE |   /* Accept untagged packets */
-	            E1000_VMOLR_STRVLAN; /* Strip vlan tags */
-	wr32(E1000_VMOLR(vfn), reg_data);
-}
-
-static inline int igb_set_vf_rlpml(struct igb_adapter *adapter, int size,
-                                 int vfn)
-{
-	struct e1000_hw *hw = &adapter->hw;
-	u32 vmolr;
-
-	vmolr = rd32(E1000_VMOLR(vfn));
-	vmolr &= ~E1000_VMOLR_RLPML_MASK;
-	vmolr |= size | E1000_VMOLR_LPE;
-	wr32(E1000_VMOLR(vfn), vmolr);
-
-	return 0;
-}
-
-static inline void igb_set_rah_pool(struct e1000_hw *hw, int pool, int entry)
-{
-	u32 reg_data;
-
-	reg_data = rd32(E1000_RAH(entry));
-	reg_data &= ~E1000_RAH_POOL_MASK;
-	reg_data |= E1000_RAH_POOL_1 << pool;;
-	wr32(E1000_RAH(entry), reg_data);
-}
-
 static void igb_set_mc_list_pools(struct igb_adapter *adapter,
 				  int entry_count, u16 total_rar_filters)
 {

参考:
1. linux-2.6.30.1 with gcc-3.4.6 compile error http://patchwork.kernel.org/patch/35402/
2. codeviz http://www.csn.ul.ie/~mel/projects/codeviz/
Categories: Kernel Tags: , , ,

Twitter Weekly Updates for 2009-07-20

July 19th, 2009 BianJiang No comments
  • Openswan is an Open Source implementation of IPsec for the Linux operating system. It is a fork of FreeS/WAN. http://www.openswan.org #

Powered by Twitter Tools.

Categories: Others Tags:

Twitter Weekly Updates for 2009-07-13

July 12th, 2009 BianJiang No comments

Powered by Twitter Tools.

Categories: Others Tags:

Twitter Weekly Updates for 2009-07-06

July 5th, 2009 BianJiang No comments
  • 组播的IP和MAC地址映射关系,可能出现32个IP对应一个MAC地址,哪位知道这种情况如何解决。。 #
  • 北戴河归来。 #
  • RT: @qingfeng: RT @fire9: RT:你别跟我提人权,人权是外国人发明的,你要人权到外国去要。中国没有人权!http://bit.ly/yWVUp (via @gaochunhui) // 为民作主都是屁话 #
  • RT: @programthink: LiveSpaces更新(墙内可访问): 党和互联网的较量 http://bit.ly/pWvk2 #
  • RT: @goldengrape: RT @jicknan 手把手教你访问Youtube(图文) http://ff.im/-4F1Hq 203.208.39.104 http://www.youtube.com203.208.33.100 gdata.youtube.com #
  • RT: @hongqn: RT @Fenng: 豆瓣架构:http://bit.ly/BrCsU #
  • RT: @isaac: rt @rtmeme: RT @virushuo:作为一个党员我不该说这样的话,中国就是这样一个社会,你要还这样认死理。我也没有办法再劝你了,你能推番党的领导吗?我这样开导你是为你好,希望你能明白 http://is.gd/1iVci 这个法官真让人感动啊 #
  • IP Multicast to MAC Address Mapping http://bit.ly/1X1As3 #
  • RT: @Fenng: 今日推荐推友: 边江(@pmbian), 前百度搜索引擎产品市场部总监,现任盛大在线公司(SDO)副总裁。 http://hi.baidu.com/bian (#每日推荐一位推友计划) // 和我同名同姓,嘿嘿 #
  • http://twitpic.com/8tfxx - Implementing IGMP in the Linux kernel #
  • RT: @programthink: 通过邮件获取翻墙利器——发送主题为“help”的纯文本邮件到gettor@torproject.org,收到回复后根据邮件的提示再回复一次,即可用邮件收取tor(大名鼎鼎的戴套翻墙工具)。 #
  • Assigned Internet Protocol Numbers http://bit.ly/B8EPG #

Powered by Twitter Tools.

Categories: Others Tags: