I have been reading an English translation version of Shri Bhagwatam and in that it is mentioned that Shri Krishna did not kill Bana the son of Bali.He did not kill him because he has promised Bali not to kill anyone from his family. It is also stated that Bali was a descendant of Prahlada. I want to know that how is Bali related to Prahlada? Also when did Lord promise Bali not to kill any of his descendants?
Prahlada's son was Virochana, who was the father of Bali.
Bali was the grandson of Prahlada. This is mentioned in Srimad Bhagavatam itself.
Below words are spoken by Bali -
पितामहो मे भवदीयसम्मत: प्रह्लाद आविष्कृतसाधुवाद: । भवद्विपक्षेण विचित्रवैशसं सम्प्रापितस्त्वं परम: स्वपित्रा ॥ ८ ॥
pitāmaho me bhavadīya-sammataḥ prahrāda āviṣkṛta-sādhu-vādaḥ bhavad-vipakṣeṇa vicitra-vaiśasaṁ samprāpitas tvaṁ paramaḥ sva-pitrā
pitāmahaḥ — grandfather; me — my; bhavadīya-sammataḥ — approved by the devotees of Your Lordship; prahrādaḥ — Prahlāda Mahārāja; āviṣkṛta-sādhu-vādaḥ — famous, being celebrated everywhere as a devotee; bhavat-vipakṣeṇa — simply going against You; vicitra-vaiśasam — inventing different kinds of harassments; samprāpitaḥ — suffered; tvam — You; paramaḥ — the supreme shelter; sva-pitrā — by his own father.
My grandfather Prahlāda Mahārāja is famous, being recognized by all Your devotees. Although harassed in many ways by his father, Hiraṇyakaśipu, he still remained faithful, taking shelter at Your lotus feet.