You did not say, but I imagine you are doing something to the item in your item:saved event, and then you are updating the item. This triggers another saved event, over and over.
What you want to do it check for what you want to change and if the old item and new item match, just return out of the event.
public void OnItemSaved(object sender, EventArgs args)
// Extract the item from the event Arguments
Item savedItem = Event.ExtractParameter(args, 0) as Item;
// Allow only non null items and allow only items from the master database
if (savedItem != null && savedItem.Database.Name.ToLower() == "master")
// check for a reason to update, if not just return
if (savedItem["MyField"] == "reason to update")
using (new SecurityDisabler())
// Do your edits here