Contribution to Open source

DPDK library 코드를 보는 중 이상한 코드를 발견해서 patch를 submit했다. 난생 처음이네.

Git을 이용해서 코드 관리를 하고 있어 패치를 내려고 해도 git을 이용해야 한다. 그리고 coding style도 확인해서 부합되지 않는 내용이 있어도 등록이 안된다고 해서 이것도 확인. 이 과정에서 linux kernel에서 사용하는 checkstyle script라는 것도 알게되고. 이걸 쓰면 codinf style을 맞추기 위해 고생할 일이 많이 줄 듯 하다. 주변에 이걸 신경 쓰는 사람이 거의 없다는 게 함정이지만

Patch 작업은 http://dpdk.org/dev 여기랑 http://dpdk.org/doc/guides/contributing/patches.html에 상세한 절차가 나와있다.

대략적으로 보면 git에서 commit하고 patch 파일 만들어서 coding style 검사한 후 git send mail로 패치 내용을 정해진 양식에 따라 설명을 추가해서 보내면 된다.

간단한 수정이었는데 patch를 진짜 보내기까지 몇 번을 반복했다. checkstyle script를 한번에 통과하지 미 못해서 그랬는데 다시 수정해서 패치를 만든 방법을 잘 몰라서 무식하게 git clone부터 하는 작업을 반복해야 했다는.

그 결과는 여기에.

If any fragment hole is found in ipv4_frag_reassemble() and ipv6_frag_reassemble(),whole ip_frag_pkt mbufs are moved to death-row. Any mbufs already chained to another mbuf are freed multiple times as there are still in ip_frag_pkt array.

Signed-off-by: cychong <cychong at gmail.com>

그리고 이건 내가 수정한 내용에 대해 maintainer(?)가 확인한 내용

Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

그리고 최종적으로 패치가 적용되었다고 추가 메일이 날아왔다.

> > If any fragment hole is found in ipv4_frag_reassemble() and ipv6_frag_reassemble(),
> > whole ip_frag_pkt mbufs are moved to death-row. Any mbufs already chained to
> > another mbuf are freed multiple times as there are still in ip_frag_pkt array.
> > 
> > Signed-off-by: cychong <cychong at gmail.com>
> 
> Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

Applied, thanks

이 과정은 mailing list에서 확인할 수 있다.

아마 다음 버전 16.07이 릴리즈될 때 포함될 듯.

Update

git pull하니 patch가 반영되었네.

$ git log --oneline --graph
...
* 6226aa5 lpm6: fix missing header dependency
* 7cc3f2c lpm: fix freeing in compatibility mode
* 62aaf55 ip_frag: fix double free of chained imbues
…

$ git log
...

commit 62aaf5524c04d030e7c408ba2742829e38aaaaab
Author: Chaeyong Chong <cychong@gmail.com>
Date:   Fri Apr 22 02:28:01 2016 +0900

    ip_frag: fix double free of chained mbufs

    If any fragment hole is found in ipv4_frag_reassemble() and
    ipv6_frag_reassemble(), whole ip_frag_pkt mbufs are moved to death-row.
    Any mbufs already chained to another mbuf are freed multiple times as
    there are still in ip_frag_pkt array.

    Signed-off-by: Chaeyong Chong <cychong@gmail.com>
    Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

다시 계단 오르기

어제 부터 다시 계단 오르기 시작.
거창한 건 없고 그냥 회사에서 기회되면 엘리베이터가 아닌 계단으로 자리까지 올라가기. 지금 11층에 있어 천천히 올라가기 적당한 높이다.

오늘은 5부제라 지하철을 타고 가는 날. 덕분에 지하철 역에서도 계단을 좀 더 걷게 되었다는.
6/1일부터는 10부제라 차 가지고 다니는 날이 더 많을 것 같으니 좀 더 움직이기 위해 노력해야겠다.

(책) 공간은 어떻게 삶을 바꾸는가

구글은 창의성을 사장님 강조 말씀 따위로 키우려 들지 않았다. 이 회사는 직원들이 언제 어디서나 자유롭게 사고하고 소통을 나눌 수 있는 ‘공간’을 마련하였다.

창의성이 시켜서 발현될 수 있는 거라면 전 세계에서 창의성이 떨어지는 조직은 없을 거다. 반대로 창의성을 죽이는 생각 조직문화(특히 Top을 포함한 경영자/관리자)가 압도적으로 많은 것이 현실이다.

새롭게 사무실을 구하는 과정에서 가장 중요했던 것은 가급적 줄이고 또 줄이는 것이었다.

이사 가기 전에 줄이고 줄이자. 안 쓰는 물건이 모두 추억이라고 생각하지 말고

Doug Dietz, GE, MRI 장비를 아이들이 무서워하지 않도록 디자인.

MRI를 만들어 고통없이 검사받을 수 있게 했지만, 정작 어린 아이들은 ‘징징’ 소리가 나는 기계에 엄마 아빠 없이 혼자 들어가야 한다는 것에 무서워한다는 걸 알게된 Doug Dietz가 아이들의 눈높이에 맞게 만든 의료 장비



출처 : http://www.geglobalresearch.com/blog/inspired-designs-help-kids-get-through-medical-scans

통찰력이란 단순한 관찰을 넘어 연역과 창의의 과정을 거쳐야 비로소 얻을 수 있다. 단순한 관찰은 공간의 효율성 등 기능에만 그치게 된다. 하지만 연역과 창의의 과정은 공간과 사람의 본질을 찾아서 새로운 가치를 창출하는 것이다.

‘1의사 2진료실’.
환자가 불쾌할 때 ‘감정적인 응대’, 즉 친절과 미소로 대하면 된다는 것은 일차원적인 해결방안에 불과하다. 문제의 근원인 긴 대기시간이나 의사와 환자가 겪는 스트레스를 사전에 제거할 수 있는 환경을 만드는 게 본질적인 해결방안이다. 무조건 친절하게 웃으라고 강조하는 것은 또 다른 강요에 불과하다. 의료진에게 추가로 스트레스를 안기는 것 밖에 되지 않는다.

‘고객이 왕이다’ 라는 말은 직원들의 희생을 정당화하는데 사용되기도 한다. 희생만 하는 직원이 진심으로 고객을 왕처럼 대할 수 있을까? 그저 가식적인 친절만 배풀 것이다. 그리고 그런 친절은 결국 드러나게 마련이다. 한쪽에 희생만 강요해서는 오래갈 수 없다.

단지 한우물만 파는 장인에 머물지 안고 다른 분야에 대해서도 깊은 관심을 나타낸다. 그래서 자신이 몸담은 분야에만 국한되지 안고 자유롭게 여러 붕냐를 오가며 사고하는 성향을 보여준다.

호기심

사용자 중심이라는 말이 마치 절대 명제처럼 받아들여지고, 또 사용자의 범위를 서비스를 제공받는 대상만으로 국한시키는 또 다른 편견과 고정관념의 틀은 경계해야 한다.

위 ‘1의사 2진료실’과 같은 맥락

아티스트, 디자이너.
그런데 각각의 고유한 능력을 프로세셔널의 수준으로까지 갖추고 있는지는 따져봐야 하지 않을까?

일단 잘하고 봐야 한다.

대체로 조직이나 작업현장에서 직급이 낮은 사람들의 목소리는 쉽게 무시당할 때가 많다. 시키는 대로 하면 된다는 생각으로 중요한 의사결정에서 배제당하는 게 당연한 것처럼 여겨진다. 그러나 현장에서 사람을 만나고 일을 하는 구성원들이야말로 가장 촉이 발달했다고 볼 수 있다.

늘 이야기하는데 듣지 않는다. 그들이 뭘 원하는 지를 가장 정확하게 아는 사람은 그 물건을 실제로 사용하는 사람이다.

구글은 사내에서 ‘예측시장’이라는 것을 운영한다. 경영진이 간과할 수 있거나 판단착오를 일으킬 수 있는 사안에 대해 현장의 말단직원들로부터 피드백을 받는 것이다.
구글의 경영진은 현장의 목소리에도 통찰력이 충분히 담겨 있다는 것을 인정했다. 직원들을 소모품만으로 생각하지 않고 경영을 디자인하는 파트너로 존중한 것이다.

회사와 직원간 신뢰가 있어야 가능한 이야기. 그리고 그 신뢰는 항상 위에서 아래로 먼저 발현되야 한다.

(책) 한국인은 미쳤다

한국인은 미쳤다

인간은 질책보다 칭찬을 받을 때 더 좋은 성적을 낸다는 것을 한국인은 생각하지 못했다

한국의 기업문하는 달성할 목표와 쌓이는 실적만을 선택하고 나머지는 모두 제외시켰다

모든 것을 세분화하다 보니 그 무엇도 파악할 수 없게 되었다.

스파르타식 교육에서 안정감을 얻는 한국인에게는 두려운 이름 , 바로 미지라는 스트레스였기 때문이다.

임원이 상관의 지시를 따르는 이유는 매우 간단하다. 그들의 상관이기 때문이다. 그저 상관에게 복종하는 것 뿐이었다.

지향점이 사라지자 일상의 무게는 견딜 수 없는 것이 되었다

강원도 커피숍 투어

커피 바다

발 밑에 바로 바다가 보이는 카페. 한 밤 중에 찾아가서 사진을 찍지는 않았다.
비 오는 밤이라 그런지 손님도 없고. 하긴 밤 9시가 넘었으니

바다가 보이는 카페 브라질

비가 오던 전날에 비해 맑게 개인 하늘과 바다가 멋진 풍경을 만들어 냈다.

2층에 자리를 잡고 통유리를 통해 바다 풍경을 즐길 수 있었다.


바다표범 인형인 ‘심마니’와 함께하는 상원이. 뭐가 그리 즐거운지 활짝 웃고 있네

‘사진 안돼요’ 라는 따님. 시험 기간이 얼마 남지 않아 문제집을 싸들고 왔다.

심심하다는 상원이. 나도 뭔가 그려야겠다고

작품이 맘에 드나보네

봄 바다도 멋지다. 거친 파도

심마니와 함께라면

바다를 응시하는 소년

파도 사진 몇 장 더

보헤미안 박이추 커피

카페를 나와 미역국으로 유명한 장안회집으로 가는 길에 우연히 멋진 카페 건물이 보였다.
그래서 결국 카페 -> 장안회집 -> 카페 순으로 순방.

길 쪽에 있는 카페 바로 뒤에 커피 공장이 있다

공장 건물 안 모습. 멋지다. 왼쪽이 공장, 오른쪽이 카페

주스 먹으며 보는 유투브는 꿀맛이겠지

따님은 프로듀스 101인가

카페 브라질은 또 가보고 싶네. 쿠기도 맛있는데

봄날이 좋다

그걸 즐길 여유는 없지만.

오늘 상원이 어린이집에서 소풍간다고 했는데 다행히 날이 맑았다. 바람은 좀 불었지만…

낙수효과는 없다

고기집에 와서 떡을 구워먹는데 아들 녀석이 아이스크림을 먹겠단다.
그럼 식사 끝이란 말 아닌가? 그래서 남은 가래떡을 먹었다.
이게 바로 ‘낙수효과’ 아닌가.

하지만 곧 그분께서 남은 가래떡을 먹겠다고 자기 가래떡이 어딨냐고 하신다.
이걸로 세상에 낙수효과란 건 존재하지 않는다는 걸 간단하게 증명했다.

세상에 낙수효과는 없다.